C# 在窗体里再新建一个窗体
时间: 2023-10-01 13:11:41 浏览: 54
在C#中,你可以通过创建一个新的窗体类,并在窗体类中实例化该窗体来在主窗体里创建一个新的窗体。以下是一个示例代码,演示如何在主窗体中创建一个新的窗体:
```csharp
using System;
using System.Windows.Forms;
public class MainForm : Form
{
private Button openChildFormButton;
private ChildForm childForm;
public MainForm()
{
Text = "主窗体";
openChildFormButton = new Button();
openChildFormButton.Text = "打开子窗体";
openChildFormButton.Click += OpenChildFormButton_Click;
Controls.Add(openChildFormButton);
}
private void OpenChildFormButton_Click(object sender, EventArgs e)
{
if (childForm == null || childForm.IsDisposed)
{
childForm = new ChildForm();
childForm.Show();
}
}
}
public class ChildForm : Form
{
public ChildForm()
{
Text = "子窗体";
}
}
class Program
{
static void Main()
{
Application.Run(new MainForm());
}
}
```
在上述代码中,我们创建了一个名为`MainForm`的主窗体类,并在主窗体中添加了一个按钮`openChildFormButton`。当点击按钮时,会创建一个新的子窗体`ChildForm`并显示出来。
请注意,在`OpenChildFormButton_Click`事件处理程序中,我们检查子窗体是否已经实例化或已被释放。这是为了确保每次点击按钮时只创建一个新的子窗体实例。
你可以根据自己的需求对主窗体和子窗体进行任意的定制和修改。