winfrom中,父窗体中只允许显示一个子窗体的代码怎么写?
我想做到,在一个父窗体中,只允许显示一个子窗体,全部子窗体,只允许出现一个.如果显示别的的子窗体,现有的子窗体关闭,代码怎么写?...
我想做到,在一个父窗体中,只允许显示一个子窗体,全部子窗体,只允许出现一个.如果显示别的的子窗体,现有的子窗体关闭,代码怎么写?
展开
2个回答
展开全部
private void ChangeChildren(Form frm)
{
//判断是否是第一次显示窗体
if (this.MdiChildren.Length == 1)
{
frm.Show();
return;
}
foreach (Form children in this.MdiChildren)
{
if (frm == children)
{
//如果是现在就存在的子窗体就激活它
children.Activate();
break;
}
else
{
//如果窗体不一样就关闭了,在显示现在所需要的
children.Close();
frm.Show();
break;
}
}
}
是这样调用的
Form f = new Form();
f.MdiParent = this;
f.Text = "1";
ChangeChildren(f);
{
//判断是否是第一次显示窗体
if (this.MdiChildren.Length == 1)
{
frm.Show();
return;
}
foreach (Form children in this.MdiChildren)
{
if (frm == children)
{
//如果是现在就存在的子窗体就激活它
children.Activate();
break;
}
else
{
//如果窗体不一样就关闭了,在显示现在所需要的
children.Close();
frm.Show();
break;
}
}
}
是这样调用的
Form f = new Form();
f.MdiParent = this;
f.Text = "1";
ChangeChildren(f);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询