IntelliSense未显示MessageBoxResult

时间:2009-08-25 19:17:29

标签: messagebox

我正在使用C#和Visual Studio 2005中的Windows窗体应用程序。

我在按钮点击事件

中显示一个消息框
string messageBoxText = "Click OK to save your changes\n";
string caption = "Confirm Changes";
MessageBoxButtons button = MessageBoxButtons.OKCancel;
//Display the MessageBox
MessageBox.Show(messageBoxText, caption, button);

MessageBoxResult result = MessageBox.Show(messageBoxText, caption, button);

编译时弹出以下错误:

  

错误1找不到类型或命名空间名称'MessageBoxResult'(您是否缺少using指令或程序集引用?)

此外,IntelliSense不会显示任何MessageBoxResult。我在MSDN上看过这个声明。如何在不使用MessageBoxResult的情况下捕获消息的响应(OK / Cancel)?

3 个答案:

答案 0 :(得分:0)

您可以尝试放置

using System.Windows; 

位于您的来源顶部。

或者尝试使用DialogResult。那是在System.Windows.Forms命名空间中,并且是我的C#源文件中的Show()返回...

答案 1 :(得分:0)

MessageBoxResult Enumeration仅适用于.NET 3.0+。你正在使用2.0。

使用DialogResult作为Walt建议。

答案 2 :(得分:0)

首先添加参考 PresentationFramework(最好来自 NuGet)并使用 System.Windows;。然后您必须使用来自 PresentationFramework 的 System.Windows 来获取 MessageBoxResult。 第二次使用Microsoft.Win32;并为 SaveFileDialog 选择它。