处理来自消息框c#的回复

kar*_*tal 5 c# wpf

如果用户单击"是",如果用户单击"否",则如何处理消息框回复示例?

eld*_*his 19

来自文档的示例(略微修改):

const string message =
    "Are you sure that you would like to close the form?";
const string caption = "Form Closing";
var result = MessageBox.Show(message, caption,
                             MessageBoxButtons.YesNo,
                             MessageBoxIcon.Question);

// If the no button was pressed ...
if (result == DialogResult.No)
{
    //Do something for No
} 
else if (result == DialogResult.Yes) 
{
    //Do something else for Yes
}
Run Code Online (Sandbox Code Playgroud)

附录:在你还在对.NET 2.0和没有访问事件var的关键字,声明result作为DialogResult.即:

DialogResult result = MessageBox.Show(...);
Run Code Online (Sandbox Code Playgroud)

错过了的事实,这是标有WPF,所以如果你正在使用的,那么你会使用稍微(但不要太多)不同System.Windows.MessageBox类,而不是System.Windows.Forms.Messagebox.的相互作用是大致相同的,但也使用了MessageBoxResult枚举代替的DialogResult,所述MessageBoxImage枚举代替MessageBoxIcon和MessageBoxButton枚举代替MessageBoxButtons(复数).你应该可以做这样的事情:

const string message =
        "Are you sure that you would like to close the form?";
const string caption = "Form Closing";
MessageBoxResult result = MessageBox.Show(message, caption,
                                 MessageBoxButton.YesNo,
                                 MessageBoxImage.Question);

if (result == MessageBoxResult.No)
{
    // Do something for No
}
else if (result == MessageBoxResult.Yes)
{
    // Do something else for Yes
}
Run Code Online (Sandbox Code Playgroud)