Поделиться через


Практическое руководство: Как вернуть результат диалогового окна

В этом примере показано, как получить результат диалогового окна, открытого путем вызова ShowDialog.

Пример

Перед закрытием диалогового окна необходимо задать его свойству DialogResultNullable<T>Boolean, указывающим способ закрытия пользователем диалогового окна. Это значение возвращается ShowDialog, чтобы позволить коду клиента определить, как было закрыто диалоговое окно и, следовательно, как обработать результат.

Заметка

DialogResult можно задать только в том случае, если окно было открыто путем вызова ShowDialog.

DialogBoxWithResult dialogBoxWithResult = new DialogBoxWithResult();
// Open dialog box and retrieve dialog result when ShowDialog returns
bool? dialogResult = dialogBoxWithResult.ShowDialog();
switch (dialogResult)
{
    case true:
        // User accepted dialog box
        break;
    case false:
        // User canceled dialog box
        break;
    default:
        // Indeterminate
        break;
}
Dim dialogBoxWithResult As New DialogBoxWithResult()
' Open dialog box and retrieve dialog result when ShowDialog returns
Dim dialogResult? As Boolean = dialogBoxWithResult.ShowDialog()
Select Case dialogResult
    Case True
        ' User accepted dialog box
    Case False
        ' User canceled dialog box
    Case Else
        ' Indeterminate
End Select

Безопасность .NET Framework

Для вызова ShowDialog требуется право на использование всех окон и событий ввода пользователя без ограничений.