1 private void MainForm_FormClosing(object sender, FormClosingEventArgs e) 2 { 3 DialogResult dr = MessageBox.Show("測試未停止,確定要退出序?", "Platform",MessageBoxButtons.YesNo, MessageBoxIcon.Stop); 4 if (dr == DialogResult.Yes) 5 { 6 TestStopFlag = true; 7 StopTest(); 8 //base.OnClosing(e); 9 //Application.Exit(e); 10 Environment.Exit(Environment.ExitCode); 11 } 12 else{ 13 e.Cancel = true; 14 } 15 }
若使用Application.Exit(e);程序會兩次跳進MainForm_FormClosing事件,因為Application.Exit(e);會觸發MainForm_FormClosing事件;
避免兩次跳入,則使用Environment.Exit(Environment.ExitCode);即可。