c# MainForm_FormClosing()问题

  
  
  
  
  1. private void MainForm_FormClosing(object sender, FormClosingEventArgs e)  
  2. {  
  3.     DialogResult dr = MessageBox.Show("测试未停止,确定要退出程序?", "PCBA_AutoTestPlatform", MessageBoxButtons.YesNo, MessageBoxIcon.Stop);  
  4.     if (dr == DialogResult.Yes){  
  5.         TestStopFlag = true;  
  6.         StopTest();  
  7.         //base.OnClosing(e);  
  8.         //Application.Exit(e);  
  9.         Environment.Exit(Environment.ExitCode);  
  10.     }  
  11.     else{  
  12.         e.Cancel = true;  
  13.     }  

        若使用Application.Exit(e);程序会两次跳进MainForm_FormClosing事件,因为Application.Exit(e);会触发MainForm_FormClosing事件;

       避免两次跳入,则使用Environment.Exit(Environment.ExitCode);即可。

你可能感兴趣的:(C#,关闭进程事件)