Есть ли эквивалент MessageBox в WPF?

Есть ли в WPF стандартное окно сообщений, например, WinForms System.Windows.MessageBox.Show(), или я должен использовать окно сообщений WinForms?

Ответ 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/

Ответ 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");