我想在现有窗口中打开一个新表单。我有2个表单,菜单和客户。
private void CustomersView_Click(object sender, EventArgs e)
{
Customers form_customers = new Customers();
form_customers.ShowDialog(this);
}
如果我使用此代码打开新表单,是否可以在现有窗口中打开新表单?
问候, Henk-Jan Leusink
答案 0 :(得分:1)
默认情况下,没有。每个Form
子类实例用于表示实际的Win32顶级窗口。
如果要将另一组控件加载到现有窗口中,则应使用UserControls。在VS中创建一个新的UserControl,并将控件从customers
表单类复制或移动到新的UserControl中。将UserControl添加到主窗体的设计器中,但将其visiblity设置为隐藏。当您想要显示它时只需更改可见性设置。
答案 1 :(得分: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();
}