日期:2014-05-19  浏览次数:20720 次

单击多次按钮会新建多个子窗口,如何只新建一个?
在主窗口上单击一个按钮10次会新建10个子窗口,如何只新建一个?
在第二单击时只是将第一回新建的窗口显示到前边。

请教

------解决方案--------------------
楼主的意思是只允许一个form1的实例吧,Show()之前先判断一下就行了

frmForm1 form1 = null;

private void button1_Click(object sender, EventArgs e)
{
if (form1 == null || form1.IsDisposed)
{
form1 = new frmForm1(this);
form1.Show();
}
else
{
form1.Activate();
}
}
------解决方案--------------------
if (this.MdiChildren.Length == 0)
{
Form2 f2 = new Form2();
f2.MdiParent = this;
f2.Show();
}
------解决方案--------------------
if (this.MdiChildren.Controls[ "子窗口名字 "] != null)
{
// 找到子窗口 将其显示到最前边,如果没有则new一个
}
else
{
new
}