2010-09-30 45 views

回答

330

WPF等价物将是System.Windows.MessageBox。它有一个非常相似的接口,但使用其他枚举参数和返回值。

+14

的WPF版本缺少重试,忽略虽然取消按钮组合。唯一可用的是Ok和Cancel。 – Mehrad 2014-06-18 23:54:53

7

至于说其他,有一个在WPF命名空间(System.Windows)。

问题是,它是与确定/取消等相同的旧消息框Vista/Win7已转移到使用任务对话框代替。

不幸的是,任务对话框没有简单的标准接口。我使用this one

9

扩展WPF工具包中的MessageBox非常好。它在引用工具包DLL后位于Microsoft.Windows.Controls.MessageBox。当然,这是2011年8月9日发布的,因此它最初不会成为您的选择。它可以在Codeplex找到每个人在那里环顾四周。

166

您可以使用此

MessageBoxResult result = MessageBox.Show("Do you want to close this window?", "Confirmation", MessageBoxButton.YesNo, MessageBoxImage.Question); 
if (result == MessageBoxResult.Yes) 
{ 
    Application.Current.Shutdown(); 
} 

的更多信息,请访问http://www.c-sharpcorner.com/uploadfile/mahesh/messagebox-in-wpf/

+0

...和其他答案一样,这里的命名空间将是“System.Windows”,与“System.Windows.Forms”相反 – Viking 2017-12-18 22:33:35

11

WPF包含以下的MessageBox:

if (MessageBox.Show("Do you want to Save?", "Confirm", 
    MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) 
{ 

} 
1

也许下面的代码她帮助

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(); 
     } 
    } 
} 
1

在WPF似乎验证码:

System.Windows.Forms.MessageBox.Show("Test"); 

被替换为:

System.Windows.MessageBox.Show("Test"); 
相关问题