System.Windows.MessageBox:是按钮缺失

时间:2015-11-02 10:56:46

标签: c# wpf

在我的WPF应用程序(.NET 3.5)中,我创建了一个这样的MessageBox:

if (System.Windows.MessageBox.Show("Eine neue Version von Qualisoft steht zum Download bereit. Möchten Sie diese installieren?", "Neue Qualisoft Version", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
...
}

我的一位客户得到了这个结果:

我在大约10个系统上进行了测试,但我无法重现这个结果。

有谁知道为什么缺少Yes按钮?

2 个答案:

答案 0 :(得分:3)

此问题 NOT (直接)与.NET相关。 WPF实际上将调用重定向到operating system,具体到this call

UnsafeNativeMethods.MessageBox(...)

可能还有其他问题。这可能是由语言包或其他东西造成的,但我对此表示怀疑。视频卡驱动程序有时会弄乱UI控件。现在没有什么可以继续下去了,因为它不能轻易复制。

您必须通过取出可能存在问题的部件进行检查。以安全模式启动并检查问题是否仍然存在。尝试使用此调用创建一个新的默认应用程序。行为是否仍然相同?然后继续。否则,代码中的某些内容可能会导致此问题。

答案 1 :(得分:2)

您的客户正在恶作剧,并向您发送了照片购物截图。可能是一个不那么微妙的暗示,他有点厌倦不得不经常处理新版本。这样的事情。

本机MessageBox()winapi函数没有显示No按钮的选项。

只是恶作剧他,然后建议他将机器拖到第4层的窗户让它滑倒。首先打开窗口的建议是完全可选的。