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 ();
}
新建可以新建新的窗口,而关闭就可以关闭窗口。是什么代码?
展开
 我来答
tanghuawei
2012-07-31 · TA获得超过209个赞
知道小有建树答主
回答量:340
采纳率:0%
帮助的人:279万
展开全部
可以在父窗体关闭时,遍历一下所有的子窗体:
if (this.MdiChildren.Length >0) //当子窗体个数大于0的时候遍历所有子窗体
{
foreach (Form form inthis.MdiChildren)// 遍历所有子窗
{
form.Close();
}
}
追问
错误 1 当前上下文中不存在名称“inthis” ....我的意思是单机一下关闭,就可以关闭一个子窗体。如果没有,那么就直接关闭父窗体。谢谢了、
追答
不好意思,in this中间是有空格的
fjkejian
2012-08-02 · 超过85用户采纳过TA的回答
知道小有建树答主
回答量:174
采纳率:0%
帮助的人:177万
展开全部
pvivate void 关闭按钮(object sender,EventArgs e)
{
Form Frm有焦点的窗体 = ((Form)sender).ActiveMdiChild;
if(Frm有焦点的窗体 == null)
{
this.Close();
}
else
{
Frm有焦点的窗体.Close();
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
苗子说全栈
2012-07-31 · 超过34用户采纳过TA的回答
知道答主
回答量:82
采纳率:100%
帮助的人:68.8万
展开全部
关闭, 如果是窗体的话, 就用this.Close();
如果是退出系统的话, 就用Application.Exit();
追问
但是如果只是this.Close();会把父窗体也一起关闭的。
追答
你的关闭, 应该在打开的那个窗体上, 这样就可以了, 如果非要在父窗体关闭的话, 也有办法, 我的办法比较笨, 也可以实现, 就是, 你下个public的方法, 这个方法就是关闭窗体的代码,然后父窗体关闭的时候, 去调用这个方法就行了.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6e94341
2012-07-31 · TA获得超过248个赞
知道答主
回答量:70
采纳率:0%
帮助的人:71.4万
展开全部
sdfg
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式