比如窗体Form1,我在另一个窗体中多次调用该窗体,每次调用都这样:
Form1 XX=new Form1();
XX.show();
XX根据调用情况可以改变。
最后,有一个按钮,点击后将这所有的XX一次全部关闭,但调用这些窗体的主窗体不会关闭,需要用Form1的哪个属性?
用代码怎样写呢?
谢谢。
Form1 XX=new Form1();
XX.show();
XX根据调用情况可以改变。
最后,有一个按钮,点击后将这所有的XX一次全部关闭,但调用这些窗体的主窗体不会关闭,需要用Form1的哪个属性?
用代码怎样写呢?
谢谢。
还是你的那个按钮的单击事件,写下面代码:
FormCollection openForms = Application.OpenForms;
foreach (Form frm in openForms)
{
if (frm != this && frm.IsHandleCreated)
{
frm.Close();
}
}这样就可以了,但要保证这个this主窗体或者说这个按钮所在窗口是主窗口
不过还有个问题,能不能指定关闭的是Form1窗体类的所有窗体呢?
这样做好像会关闭很多其他窗体吧。
foreach (Form frm in openForms)
{
if (frm != this && frm.IsHandleCreated && frm.Owner==this)
{
frm.Close();
}
}