在父级内部创建具有访问父级表单能力的新表单实例

时间:2018-12-04 05:07:27

标签: c# winforms controls mdiparent formborderstyle

我试图在父级内部创建一个新表单。我将FormBorderStyle设置为none

当我将MDIParent调整为myForm时,它给了我一个看起来很恶心的错误,如下所示:

System.ArgumentException : The given Form is not being recalled as a MdiContainer.

这是我用于创建新Windows窗体的代码。

FrmHome myForm = new FrmHome ();
myForm.TopLevel = false;
pnlContainer.Controls.Add(myForm);
myForm.Show();

1 个答案:

答案 0 :(得分:2)

Mdi父级必须将其IsMdiContainer属性设置为True

您可以在设计时在您的主窗体或运行时中设置此属性:-

Form1 f1 = new Form1();
f1.MdiParent = this;
f1.Show();

Form1是您要显示的表单的名称。

Form.IsMdiContainer属性

  

财产价值   布尔型   如果表单是MDI子表单的容器,则为true;否则为false。否则为假。   默认值为false。