我的问题是我有Form1,打开Form2,然后打开另一个Form,我想在最后一个Form上创建一个按钮,该按钮返回到主窗体,然后关闭所有其他窗体。
这是我对表单开口进行编程的方式:
Form2 popup= new Form2();
this.Hide();
popup.ShowDialog();
This.Show();
我对其他表单也做了同样的事情,我尝试做这样的事情:
Form1 main= new Form1();
this.Close();
main.Show();
但这使所有其他形式保持打开状态。
谢谢!
您可以使用来获取应用程序中所有打开的表单的列表Application.OpenForms
。然后,您可以遍历它们并关闭所有不需要的对象。像这样的东西:
foreach (Form f in Application.OpenForms) {
if (f.Name != this.Name)
f.Close();
}
Form1 main= new Form1();
this.Close();
main.Show();
我现在没有办法测试代码,但是您可以在循环中与其他所有表单一起关闭当前表单,因此代码可以简化为:
foreach (Form f in Application.OpenForms) {
f.Close();
}
Form1 main= new Form1();
main.Show();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句