C#MDI子窗体的关闭代码。父窗体的文件菜单栏有新建和关闭两个子选项
privatevoid新建NToolStripMenuItem_Click(objectsender,EventArgse){Form2newMDIChild=newFo...
private void 新建NToolStripMenuItem_Click(object sender, EventArgs e)
{
Form2 newMDIChild=new Form2();
newMDIChild.MdiParent=this;
newMDIChild.Show ();
}
新建可以新建新的窗口,而关闭就可以关闭窗口。是什么代码? 展开
{
Form2 newMDIChild=new Form2();
newMDIChild.MdiParent=this;
newMDIChild.Show ();
}
新建可以新建新的窗口,而关闭就可以关闭窗口。是什么代码? 展开
4个回答
展开全部
可以在父窗体关闭时,遍历一下所有的子窗体:
if (this.MdiChildren.Length >0) //当子窗体个数大于0的时候遍历所有子窗体
{
foreach (Form form inthis.MdiChildren)// 遍历所有子窗
{
form.Close();
}
}
if (this.MdiChildren.Length >0) //当子窗体个数大于0的时候遍历所有子窗体
{
foreach (Form form inthis.MdiChildren)// 遍历所有子窗
{
form.Close();
}
}
追问
错误 1 当前上下文中不存在名称“inthis” ....我的意思是单机一下关闭,就可以关闭一个子窗体。如果没有,那么就直接关闭父窗体。谢谢了、
追答
不好意思,in this中间是有空格的
展开全部
pvivate void 关闭按钮(object sender,EventArgs e)
{
Form Frm有焦点的窗体 = ((Form)sender).ActiveMdiChild;
if(Frm有焦点的窗体 == null)
{
this.Close();
}
else
{
Frm有焦点的窗体.Close();
}
}
{
Form Frm有焦点的窗体 = ((Form)sender).ActiveMdiChild;
if(Frm有焦点的窗体 == null)
{
this.Close();
}
else
{
Frm有焦点的窗体.Close();
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
关闭, 如果是窗体的话, 就用this.Close();
如果是退出系统的话, 就用Application.Exit();
如果是退出系统的话, 就用Application.Exit();
追问
但是如果只是this.Close();会把父窗体也一起关闭的。
追答
你的关闭, 应该在打开的那个窗体上, 这样就可以了, 如果非要在父窗体关闭的话, 也有办法, 我的办法比较笨, 也可以实现, 就是, 你下个public的方法, 这个方法就是关闭窗体的代码,然后父窗体关闭的时候, 去调用这个方法就行了.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sdfg
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询