在用vs 2010调试程序时,
发现会有一个奇怪的现象。在直接点击窗体上面的X,他会返回不了vs2010
程序一直处于运行状态,必须手工去点击停止调试。
但有时候不知道改了哪里,点击X后他会返回。我选择关闭程序的模式是“最后一个窗体关闭时”。

解决方案 »

  1.   

    添加在窗体关闭时候,结束所有线程,大概例子如下:
            private void Form1_FormClosing(object sender, FormClosingEventArgs e)
            {
               1.this.Close();   只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出;
                2.Application.Exit();  强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出;
                3.Application.ExitThread(); 强制中止调用线程上的所有消息,同样面临其它线程无法正确退出的问题;
                4.System.Environment.Exit(0);   这是最彻底的退出方式,不管什么线程都被强制退出,把程序结束的很干净。
            }