假设我的父窗体上有一个新建按钮,单击后就生成一个新窗体;按钮代码如下:
Form1 fr = new Form1;
fr.MdiParent = this;
fr.Show();我是想在我新建了N个窗体后,我单击父窗体的一个按钮,就把这群子窗体都全部关闭掉。请问那按钮的代码是如何写呢??
Form1 fr = new Form1;
fr.MdiParent = this;
fr.Show();我是想在我新建了N个窗体后,我单击父窗体的一个按钮,就把这群子窗体都全部关闭掉。请问那按钮的代码是如何写呢??
大概可以这么写
for(int i=0;i<application.openform.count;i++)
{
if(application.openform[i].owner.name == this.name)
application.openform[i].close();
}
private void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < forms.Count; i++)
((Form)forms[i]).Close();
} List<Form> forms = new List<Form>();
//打开子窗体
private void button2_Click(object sender, EventArgs e)
{
Form1 d = new Form1();
d.MdiParent = this;
forms.Add(d);
d.Show();
}
while (activeChild != null)
{
activeChild.Close();
activeChild = this.ActiveMdiChild;
}
你是从活动(ActiveMdiChild)入手的,但是也可以从他们的(IsMdiChild)入手或许也可以,
我试了下,不知道怎么用,你看呢?
foreach (Form item in this.MdiChildren)
{
item.Close();
}
F.Close();