在開發系統時,常常有這樣一個問題,就是當關閉主窗體,也即退出系統時,如果想提示是否關閉,以免誤操作,可以在主窗體的Main_FormClosing事件中添加一個對話框,代碼如下:
private void Main_FormClosing(object sender, FormClosingEventArgs e)
{}
這樣,點擊“是”,就退出系統,“否”就關閉對話框,不退出系統。值得注意的是,該思路也可用於關閉某個窗體時提示是否對該窗體所做的操作進行保存,同樣是在窗體的FormClosing事件中,如下所示:
private void Education_Train_Mark_KeyIn_FormClosing(object sender, FormClosingEventArgs e)
{
if (!saved)
{
DialogResult TS = MessageBox.Show("保存?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (TS == DialogResult.Yes)
{
button1_Click(sender, e);//保存操作按鈕的單擊事件
e.Cancel = false;
}
else
e.Cancel = false;
}
}
上面的saved定義了一個bool型的變量,作用在於判斷是否進行了保存操作。如果事先沒保存,點擊“是”,就保存,然後關閉該窗體;如果點擊“否”,就直接關閉該窗體。