C# 跳转到另一个Form窗体时如何关闭当前Form窗体?

如题所述

第1个回答  2022-11-16

方法一:

关闭子窗体后

1、form2.Closed += (ss,ee)=> { this.Close(); };

2、Application.OpenForms集合,找到要关闭的窗口,再Close:foreach (var item in Application.OpenForms),{ if (item is Form1) item.Close(); }。

方法二:

B new_form = new B();

new_form.owner = this;

this.hide();

new_form.showdialog();

Application.ExitThread();

Application.ExitThread();

首先默认情况下我们的程序是单线程的,this.hide();把当前窗体隐藏起来了,然后new_form.showdialog();模态弹出新窗口。这个时候线程不会继续执行,直到我们关闭了新弹出来的模态窗口后,程序才会继续执行Application.ExitThread();此时线程关闭,所有一切都关闭了,隐藏的窗口也关闭了。

相似回答