#region MDI子窗体实例化一次 /// <summary> /// 名称:CheckChildOpenState /// 功能:用子窗体的Name进行判断是否已实例化,如果存在则将他激活 /// </summary> /// <param name="MdiForm">容器窗体</param> /// <param name="ChildForm">子窗体</param> public static void CheckChildOpenState(Form MdiForm, Form ChildForm, FormWindowState state) { foreach (Form tempChildForm in MdiForm.MdiChildren) { if (tempChildForm.Name != ChildForm.Name.ToString()) tempChildForm.Close(); } ChildForm.MdiParent = MdiForm; ChildForm.WindowState = state; ChildForm.Show(); } #endregion
调用:
private void 员工管理ToolStripMenuItem1_Click(object sender, EventArgs e) { MesShow.CheckChildOpenState(this, new Worker.List(), FormWindowState.Maximized); }
在网上找了好久没有找到,后来直接自己改了一个,可以同时解决MDI内窗口初始状态最大化BUG问题,转载请注意小胡原创
- 本文标题: WinForm 如何在Mdi父窗体中只保留一个子窗体
- 文章分类:【WinForm/WPF】
- 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.