//添加窗口關閉事件委托
在窗口關閉事件中處理
private void TestForm_FormClosing(object sender, FormClosingEventArgs e)
{
switch (e.CloseReason)
{
//應用程序要求關閉窗口
case CloseReason.ApplicationExitCall:
e.Cancel = false; //不攔截,響應操作
break;
//自身窗口上的關閉按鈕
case CloseReason.FormOwnerClosing:
e.Cancel = true;//攔截,不響應操作
break;
//MDI窗體關閉事件
case CloseReason.MdiFormClosing:
e.Cancel = true;//攔截,不響應操作
break;
//不明原因的關閉
case CloseReason.None:
break;
//任務管理器關閉進程
case CloseReason.TaskManagerClosing:
e.Cancel = false;//不攔截,響應操作
break;
//用戶通過UI關閉窗口或者通過Alt+F4關閉窗口
case CloseReason.UserClosing:
e.Cancel = true;//攔截,不響應操作
break;
//操作系統准備關機
case CloseReason.WindowsShutDown:
e.Cancel = false;//不攔截,響應操作
break;
default:
break;
}
//if(e.Cancel == false)
// base.OnFormClosing(e);
}