两个MessageBox退出确认消息

Ydh*_*hem -1 c#

我的确认消息有问题..我有两个MessageBox,第一个询问"你想退出吗?" 第二个,问"你确定!?" 我的问题是,如果我在第一个MessageBox"你想要退出吗?"时选择"是".显示,第二个MessageBox仍会出现..

namespace WindowsFormsApplication5
{
    public partial class Form1 : Form
    {

        private void Form1_FormClosing(Object sender, FormClosingEventArgs e)
        {
            var confirmationBox = MessageBox.Show(@"Do you want to quit", @"Title",
                                                  MessageBoxButtons.YesNo);
            var confirmationBox2 = MessageBox.Show(@"Are you sure?", @"", MessageBoxButtons.YesNo);


            if (confirmationBox == DialogResult.Yes)
            {
                if (confirmationBox2 == DialogResult.No)
                {
                    e.Cancel = true;
                }
            }

        }

    }
}
Run Code Online (Sandbox Code Playgroud)

Ser*_*rvy 6

在检查第一个消息的结果之前,不要显示第二个消息框:

var confirmationBox = MessageBox.Show(@"Do you want to quit", @"Title",
    MessageBoxButtons.YesNo);

if (confirmationBox == DialogResult.Yes)
{
    var confirmationBox2 = MessageBox.Show(@"Are you sure?", @"", MessageBoxButtons.YesNo);
    if (confirmationBox2 == DialogResult.No)
    {
        e.Cancel = true;
    }
}
Run Code Online (Sandbox Code Playgroud)

PS用这些对话框来惹恼你的用户很烦人; 考虑不要这样做,除非有一个真正有说服力的理由,他们现在不应该关闭(即在一个将处于无效状态的操作中,或者有未保存的数据).