在WPF中是否有一个标准的消息框,如WinForms的System.Windows.Forms.MessageBox.Show(),或者我应该使用WinForms消息框?
当前回答
也许下面的代码会有所帮助:
using Windows.UI.Popups;
namespace something.MyViewModels
{
public class TestViewModel
{
public void aRandonMethode()
{
MyMessageBox("aRandomMessage");
}
public async void MyMessageBox(string mytext)
{
var dialog = new MessageDialog(mytext);
await dialog.ShowAsync();
}
}
}
其他回答
WPF的等效程序是System.Windows.MessageBox。它有一个非常相似的接口,但是使用其他枚举来表示参数和返回值。
WPF中与WinForms的MessageBox等价的是System.Windows.MessageBox。
正如其他人所说,在WPF命名空间(System.Windows)中有一个MessageBox。
问题是,它是相同的旧消息框与确定,取消等。Windows Vista和Windows 7转而使用任务对话框。
不幸的是,任务对话框没有简单的标准界面。我使用来自CodeProject KB的实现。
WPF扩展工具包中的MessageBox非常好。它在Microsoft.Windows.Controls.MessageBox中,在引用工具箱DLL之后。当然,这是2011年8月9日发布的,所以它本来就不是你的选择。每个人都可以在Github上找到它。
你可以用这个:
MessageBoxResult result = MessageBox.Show("Do you want to close this window?",
"Confirmation",
MessageBoxButton.YesNo,
MessageBoxImage.Question);
if (result == MessageBoxResult.Yes)
{
Application.Current.Shutdown();
}
欲了解更多信息,请访问WPF中的MessageBox。
推荐文章
- 如何从枚举中选择一个随机值?
- 驻留在App_Code中的类不可访问
- 在链式LINQ扩展方法调用中等价于'let'关键字的代码
- dynamic (c# 4)和var之间的区别是什么?
- Visual Studio: ContextSwitchDeadlock
- 返回文件在ASP。Net Core Web API
- 自定义HttpClient请求头
- 如果我使用OWIN Startup.cs类并将所有配置移动到那里,我是否需要一个Global.asax.cs文件?
- VS2013外部构建错误"error MSB4019: The imported project <path> was not found"
- 从另一个列表id中排序一个列表
- 等待一个无效的异步方法
- 无法加载文件或程序集…参数不正确
- c#中枚举中的方法
- 如何从字符串中删除新的行字符?
- 如何设置一个默认值与Html.TextBoxFor?