我有MainForm,ChildForm和usercontrol1。我将usercontrol1嵌入到Mainform中。 usercontrol1中有一个按钮。我想在点击按钮时打开ChildForm(作为mdiform)。 ChildForm已经开放最大化。我想总是展示MainForm Titlebar。 这里的代码我试过,但它无法正常工作。 usercontrol1的按钮单击事件中的此代码
ChildForm t = new ChildForm ();
MainForm m = new MainForm();
t.MdiParent = m; //Also I tried 'this' too
t.Dock = DockStyle.Fill;
t.Show();
谢谢
答案 0 :(得分:0)
在MainForm
中,创建一个Singleton,然后您的代码如下所示:
MainForm代码:
private static MainForm _Instance;
public static MainForm Instance
{
get
{
if (_Instance == null)
{
_Instance = new MainForm();
}
return _Instance;
}
}
活动代码:
ChildForm t = new ChildForm();
t.MdiParent = MainForm.Instance;
t.Dock = DockStyle.Fill;
t.Show();
答案 1 :(得分:0)
您可以使用ActiveForm
来获取当前的MDIForm Actived:
ChildForm t = new ChildForm ();
MainForm m = new MainForm();
t.MdiParent = m.ActiveForm;
t.Show();