如何在WinForms MessageBox按钮上实现事件处理程序[关闭]

2skhul33  于 2023-08-07  发布在  其他
关注(0)|答案(3)|浏览(117)

很难说这里问的是什么。这个问题是模棱两可的,模糊的,不完整的,过于宽泛的,或修辞,不能合理地回答其目前的形式。有关澄清此问题以便重新打开的帮助,请访问visit the help center
10年前就关门了。
社区在20天前审查了是否重新打开此问题,并将其关闭:
原始关闭原因未解决
我有一个WinForms应用程序,当输入所有字段时,有一个保存按钮。
单击保存按钮后,将出现一个消息框,说明“记录已成功保存”。消息框有两个按钮,“是”和“否”。
如果是,则应保存记录并清除表格上的所有字段。如果单击“否”,则应清除表单上的所有字段,而不保存记录。
我该如何实现这一点?

0g0grzrc

0g0grzrc1#

您不需要事件处理程序; MessageBox类的Show方法返回一个DialogResult:

DialogResult result = MessageBox.Show("text", "caption", MessageBoxButtons.YesNo);
if(result == DialogResult.Yes){
   //yes...
}
else if(result == DialogResult.No){
   //no...
}

字符串

jobtbby3

jobtbby32#

DialogResult-enum来处理这些事情(来自MSDN

private void validateUserEntry5()
{
    // Checks the value of the text.
    if(serverName.Text.Length == 0)
    {
        // Initializes the variables to pass to the MessageBox.Show method.
        string message = "You did not enter a server name. Cancel this operation?";
        string caption = "No Server Name Specified";
        MessageBoxButtons buttons = MessageBoxButtons.YesNo;
        DialogResult result;
        // Displays the MessageBox.
        result = MessageBox.Show(this, message, caption, buttons);
        if(result == DialogResult.Yes)
        {
            // Closes the parent form.
            this.Close();
        }
    }
}

字符串

axkjgtzd

axkjgtzd3#

你可以使用DialogResult Enumeration来实现。

if(MessageBox.Show("Title","Message text",MessageBoxButtons.YesNo) == DialogResult.Yes)
{
//do something
}

字符串

相关问题