x是一定子窗口对象。关闭的时候不为NULL的啊?那怎么知道是已经关闭了?
- C# code
if (x== null) { x= new FormEditClient(); x.Text = "添员"; x.MdiParent = this; x.Show(); }
------解决方案--------------------
可以使用事件。
x.FormClosing += ...
------解决方案--------------------
/// <summary>
/// 通用打开MDI子窗口方法
/// </summary>
/// <param name="childType"></param>
private void OpenChildForm(Type childType)
{
bool isOpened = false;
foreach (Form child in this.MdiChildren)
{
if (child.GetType()==childType)
{
child.Activate();
isOpened = true;
break;
}
}
if (!isOpened)
{
Form child = (Form)Activator.CreateInstance(childType);
child.MdiParent = this;
child.WindowState = FormWindowState.Maximized;
child.Show();
}
}
在其他地方调用这个方法就是了。