Чи є вбудований діалог підтвердження у Windows Forms?


114

Я хотів би створити просте діалогове вікно підтвердження: "Будь ласка, перевірте інформацію, і якщо ви впевнені, що вона правильна, натисніть кнопку ОК"

Чи є щось таке вбудоване?

Відповіді:


221

Ось приклад. Можна спробувати щось подібне.

var confirmResult =  MessageBox.Show("Are you sure to delete this item ??",
                                     "Confirm Delete!!",
                                     MessageBoxButtons.YesNo);
if (confirmResult == DialogResult.Yes)
{
    // If 'Yes', do something here.
}
else
{
    // If 'No', do something here.
}

Ви також можете спробувати MessageBoxButtons.OKCancelзамість MessageBoxButtons.YesNo. Це залежить від ваших вимог.


2
Такий підхід працював для мене ідеально. У мене був випадок, коли є кнопка "скидання", яка видаляє дані, і це чудовий метод для вирішення цього питання.
Ніколас Крейдберг

1
У моєму випадку замість DialogResult мені довелося використовувати MessageBoxResult
kamil.ka

MessageBoxButtons.YesNo не повинен читати MessageBoxButton.YesNo, а DialogResult змінює MessageBoxResult для .NET 4.6.
Ян

17

MessageBox.Show? Ви можете вказати назву, підпис і кілька варіантів, для яких кнопок відображатись.

З іншого боку, якщо ви просите людей підтвердити інформацію, це виглядає так, що ви, мабуть, хочете показати спеціальне діалогове вікно, з яким ви можете зробити Form.ShowDialog.


1
Дякую, я загляну в клас Form.ShowDialog. BTW, як ви відредагували своє запитання, не відображаючи доопрацювання?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.