c# winForm 窗口跳转后即关闭上一个窗口的实现代码

发布时间:2019-12-15编辑:脚本学堂
为大家介绍c# winform窗口跳转后,立即关闭上一个窗口的实现代码,这里给大家提供二个方法供参考。

方法1,关闭子窗体后:
 

复制代码 代码示例:
form2.Closed += (ss,ee)=> { this.Close(); };
//或Application.OpenForms集合找到要关闭的窗口,再Close:
foreach (var item in Application.OpenForms)
{
  if (item is Form1) item.Close();
}

方法2:
 

复制代码 代码示例:
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();此时线程关闭,所有一切都关闭了,隐藏的窗口也关闭了。

介绍完毕,抓紧在自己的代码中应用一下吧,好好学习,努力向上!