1

如果用户选中 ,Checkbox我如何编码以显示MessageBox.Show("...",在消息框中带有YesNoCancel按钮,并且当用户单击“否”时,会MessageBox.Show弹出另一个?

到目前为止,我的代码是这样的,它不起作用:

private void lipsCheckBox_CheckedChanged(object sender, EventArgs e)
    {
        if (lipsCheckBox.Checked = MessageBox.Show("...?",
            "Want something else?",
            MessageBoxButtons.YesNoCancel, MessageBox.Show("...?",
            "Yea, Burt's bees?",
            MessageBoxButtons.YesNoCancel, MessageBox.Show("...??",
            "Hell yea LipxMedx?",
            MessageBoxButtons.YesNoCancel),
            MessageBoxIcon.Question);
    }
4

3 回答 3

19

你必须知道MessageBox Dialog

if (checkBox1.Checked && (MessageBox.Show("Yes or no", "The Title", 
    MessageBoxButtons.YesNo, MessageBoxIcon.Question, 
    MessageBoxDefaultButton.Button1) == System.Windows.Forms.DialogResult.Yes))
{
    //TODO: Stuff
}
于 2013-02-23T06:30:29.513 回答
11

做这样的事情:

if (checkBox1.Checked)
{

     DialogResult dr = MessageBox.Show("Message.", "Title", MessageBoxButtons.YesNoCancel, 
        MessageBoxIcon.Information);

    if (dr == DialogResult.Yes)
    {
        // Do something
    }
}

您应该能够使用此代码段来完成您需要的其余部分。

于 2013-02-23T02:32:20.583 回答
6

你可以这样做:

private void lipsCheckBox_CheckedChanged(object sender, EventArgs e)
{
    if (lipsCheckBox.Checked)
    {     
        DialogResult dr = MessageBox.Show("...?", "Want something else?", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Information);

        if(dr == DialogResult.Yes)
        {
            //
        }
        else if(dr == DialogResult.Cancel)
        {
            //
        }
    }
}
于 2013-02-23T02:35:28.690 回答