表单关闭 - MessageBoxButtons"取消"关闭应用程序

时间:2015-04-08 14:00:31

标签: c# winforms

我有以下代码行:

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    if (MessageBox.Show("Message?", "Message", MessageBoxButtons.OKCancel) == DialogResult.OK)
    {
    }
}

关键是:当用户点击“确定”时,应用程序正在关闭。如果用户单击“取消”,结果是相同的:应用程序正在关闭,我不希望这样。谁能理解我错过了什么?

2 个答案:

答案 0 :(得分:4)

通过FormClosingEventArgs属性Cancel

取消关闭
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{ 
   if (MessageBox.Show("Message?", "Message", MessageBoxButtons.OKCancel) != DialogResult.OK)
       e.Cancel = true;
}

答案 1 :(得分:1)

如果要避免在此事件处理程序中关闭表单,则需要设置FormClosingEventArgs。如果您不希望表单关闭,只需设置e.Cancel = true;,例如在你的if-block中。