我想實現在點擊關閉按鈕時彈出窗口,提示關閉還是最小化至托盤,我新建了一個窗體,用來當做對話框,在closed事件中彈出它,使用showdialog()方式。但是當我不論點擊任何按鈕時,他都會退出。下面是我的代碼,請教大神如何實現這一功能?
//這是點擊對話框中確定按鈕事件
private void Btn_OK_Click(object sender, EventArgs e)
{
if(CB_NoTip.Checked)
{
UtilsClass.OperateAppConfig("IsTip", "false");
}
if (RB_MinTask.Checked)
{
UtilsClass.OperateAppConfig("IsMinTask", "true");
this.DialogResult = DialogResult.Yes;
this.Close();
}
else if(RB_Exit.Checked)
{
UtilsClass.OperateAppConfig("IsMinTask", "false");
this.DialogResult = DialogResult.No;
}
}
//這是點擊對話框上的取消按鈕事件
private void Btn_Exit_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.None;
}
//這是主窗體中點擊關閉按鈕的form_closed事件。
private void MainWindow_FormClosing(object sender, FormClosingEventArgs e)
{
string isTip = UtilsClass.OperateAppConfig("IsTip");
if (isTip == "true")
{
ExitWindow exit = new ExitWindow();
DialogResult dr = exit.ShowDialog();
if (DialogResult.Yes == dr)
{
}
else if (DialogResult.No == dr)
{
Application.Exit();
}
else if (DialogResult.None == dr)
{
exit.Close();
}
}
else
{
Application.Exit();
}
}
我嘗試過使用closing事件,但是在點擊對話框上的確定按鈕時總會再次彈出對話框
參考:
http://blog.bossma.cn/winform/winfrom_close_tip_for_close_or_min_solution/