Есть ли в WPF стандартное окно сообщений, например, WinForms System.Windows.MessageBox.Show()
, или я должен использовать окно сообщений WinForms?
Есть ли эквивалент MessageBox в WPF?
Ответ 1
эквивалентом WPF будет System.Windows.MessageBox
. Он имеет довольно похожий интерфейс, но использует другие перечисления для параметров и возвращаемого значения.
Ответ 2
вы можете использовать этот
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/
Ответ 3
Да. Он называется System.Windows.MessageBox.
http://msdn.microsoft.com/en-us/library/system.windows.messagebox.aspx
Ответ 4
WPF содержит следующее MessageBox:
if (MessageBox.Show("Do you want to Save?", "Confirm",
MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
{
}
Ответ 5
MessageBox в Расширенном WPF Toolkit очень приятный. Это в Microsoft.Windows.Controls.MessageBox после ссылки на DLL инструментария. Конечно, это было выпущено 9 августа 2011 года, поэтому для вас это не было бы вариантом. Его можно найти в Codeplex для всех, озираясь вокруг.
Ответ 6
Как говорят другие, в пространстве имен wpf (System.Windows) есть один.
Проблема заключается в том, что это тот же старый почтовый ящик с ОК/Отмена и т.д. Vista/Win7 перешел на использование диалоговых окон задач.
К сожалению, нет простого стандартного интерфейса для диалогов задач. Я использую этот
Ответ 7
Может быть, код ее ниже помогает
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();
}
}
}
Ответ 8
В WPF это выглядит так:
System.Windows.Forms.MessageBox.Show("Test");
заменяется на:
System.Windows.MessageBox.Show("Test");