0

我想在现有窗口中打开一个新表单。我有 2 个表格,菜单和客户。

private void CustomersView_Click(object sender, EventArgs e)
{
        Customers form_customers = new Customers();
        form_customers.ShowDialog(this);
}

如果我使用此代码打开新表单,是否可以在现有窗口中打开新表单?

问候,Henk-Jan Leusink

4

2 回答 2

1

默认情况下,没有。每个Form子类实例都代表一个实际的 Win32 顶级窗口。

如果要将另一组控件加载到现有窗口中,则应使用 UserControls。customers在 VS 中创建一个新的 UserControl,然后将控件从表单类复制或移动到新的 UserControl 中。将 UserControl 添加到主窗体的设计器中,但将其可见性设置为隐藏。当您想显示它时,只需更改可见性设置。

于 2012-09-26T07:03:46.337 回答
0

您可能需要一个MDI表单,将IsMdiContainer主窗口的属性设置为true并尝试像以下代码一样使用它:

// This is a method on the MDI parent (IsMdiContainer = true)
private void Button1_Click(object sender, EventArgs e)
{
    var myForm = new MyForm();
    myForm.MdiParent = this;
    myForm.Show();
}
于 2012-09-26T07:46:49.813 回答