我有三个表单。
假设它们是A、B、C。
表单A打开表单B,然后表单B再打开表单C。
我在表单C中添加了一个名为隐藏所有打开的表单的按钮。
现在我该如何使用这个按钮隐藏所有三个表单?
我知道一种方法是使用ShowWindow Api,但我不想使用Api调用。
编辑: 感谢SoMoS。
for (int i = Application.OpenForms.Count - 1; i >= 0; i += -1)
{
if (!object.ReferenceEquals(Application.OpenForms[i], this))
{
Application.OpenForms[i].Hide();
}
}
this.Hide();
或者
在A表单中(感谢ho1)
B frm = new B();
frm.Owner = this;
frm.Show();
在B表单中
C frm = new C();
frm.Owner = this;
frm.Show();
在表单C的按钮点击事件中。
Owner.Owner.Hide();
Owner.Hide();
Hide();
感谢Wim Coenen,或者说由于他的帮助,这项技术得到了发展。
foreach (Form var in Application.OpenForms)
{
var.Hide();
}
感谢您的选择。
foreach (var form in Application.OpenForms) form.Hide();
呢? - Wim Coenen