当前位置:  开发笔记 > 编程语言 > 正文

如何使用Yes/No MessageBox的结果?

如何解决《如何使用Yes/NoMessageBox的结果?》经验,为你挑选了1个好方法。

我正在努力制作一个节目,并为"活动"显示可用和不可用的座位.我得到的错误如下:

'System.Nullable'不包含'Yes'的定义,并且没有扩展方法'Yes'可以找到接受类型'System.Nullable'的第一个参数(你是否缺少using指令或汇编引用?)

(同样适用于"不")和

'System.Windows.Window.DialogResult'是'属性',但用作'类型'.

这是我到目前为止:

private void btnSeat1_Click(object sender, RoutedEventArgs e)
{
    if (!Seat1)
    {
        DialogResult Result = MessageBox.Show("This Seat is Available, Would you like to pick it?", "Would you like this seat?", MessageBoxButton.YesNo, MessageBoxImage.Question);

        if (Result == DialogResult.Yes)
        {
            MessageBox.Show("You Reserved this seat");
            btnSeat1.Text = "Reserved";
        }
        else if (Result == DialogResult.No)
        {
            Environment.Exit(0);
        }

注意:我只使用Environment.Exit作为占位符.这是故意的,并将相应地改变.它不是问题的根源.



1> Ron Beyer..:

这一行:

DialogResult Result = MessageBox.Show("This Seat is Available, Would you like to pick it?", "Would you like this seat?", MessageBoxButton.YesNo, MessageBoxImage.Question);

应该是这样的:

var Result = MessageBox.Show("This Seat is Available, Would you like to pick it?", "Would you like this seat?", MessageBoxButton.YesNo, MessageBoxImage.Question);

然后,如果你将鼠标悬停在Result你身上,你可以看到它不是a DialogResult,而是a MessageBoxResult,或者,如果你想明确输入它,请尝试:

MessageBoxResult Result = MessageBox.Show(...

所以你会在你的if语句中使用它:

if (Result == MessageBoxResult.Yes)
{
    MessageBox.Show("You Reserved this seat");
    btnSeat1.Text = "Reserved";
}
else if (Result == MessageBoxResult.No)
{
    Environment.Exit(0);
}

你得到错误,因为DialogResult它实际上是Window类的属性,并且你试图像它的类型一样使用它(正如编译器所说).

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有