C#中关闭窗体的四种方法

1. close():

指仅关闭当前窗体,如果不是主窗体(包含主线程的窗体,并非MDI窗体)的话,是无法退出整个程序的。如果有托管线程也无法退出。
  此方法会调用 dispose() 方法,所以它会自动的帮我们释放内存,除了以下两种情况:(1)该窗体是多文档应用程序(MDI)的一部分并且此窗体不可见;(2)此窗体是“模态”窗体。
  close() 方法执行的时候会触发两个事件:Form_Closing 和 Form_Closeed 事件,Form_Closing 是在窗体关闭时执行,Form_Closed 是在窗体关闭之后执行,所以如果想取消关闭窗体,可以在 Form_Closing 事件里取消。

2. Application.Exit():

强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出。

3. Application.ExitThread():

强制中止调用线程上的所有消息,同样面临其它线程无法正确退出的问题。

4. System.Environment.Exit(0);

这是最彻底的退出方式,不管什么线程都被强制退出,把程序结束的很干净。 参数0:代表程序正常退出;参数1:代表程序非正常退出。

作者:张伟杰-Vijay
来源:CSDN
原文:https://blog.csdn.net/zwj_jyzl/article/details/82316151

你可能感兴趣的:(笔记)