private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2(); //创建实例
bool isOpened = false; //标记没有创建
foreach(Form form in this.MdiChildren)
{
if (frm2.Name == form.Name) //已经打开过了,则要激活该窗体
{
frm2.Activate(); //激活该窗体
frm2.StartPosition = FormStartPosition.CenterParent;
frm2.WindowState = FormWindowState.Normal;
isOpened = true; //标记已经打开了
frm2.Dispose(); //销毁这个创建的实例
break;
}
}
if(!isOpened) //没有创建
{
frm2.MdiParent = this;
frm2.Show();
}
}
如何实现MDI窗体不重复打开同一个子窗体
C#窗体应用:避免重复打开子窗口
最新推荐文章于 2020-11-20 22:41:01 发布
本文介绍了一种在C#窗体应用程序中避免重复打开相同子窗口的方法。通过检查当前MDI父窗体的所有子窗口,判断是否已存在目标子窗口实例,若已存在则激活该窗口,否则创建并显示新的子窗口实例。
1600

被折叠的 条评论
为什么被折叠?



