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


Ввод пользовательских данных в диалоговых окнах

Диалоговые окна обычно используются для предоставления пользователю пространства для ввода данных, которые используются приложением. Форма, которая отображает диалоговое окно, обрабатывает эти данные. При отображении диалогового окна важно знать, как оно закрывается, или "результат" закрытия. Например, если пользователь нажимает кнопку Отмена, данные, введенные пользователем, удаляются, а не сохраняются. Чтобы узнать, как закрылось диалоговое окно, можно использовать свойство Form.DialogResult.

Используйте значение свойства DialogResult, чтобы определить из формы, в которой отображается диалоговое окно (такая форма называется родительской формой диалогового окна), какая кнопка нажата — "ОК" или "Отмена". На основе результата, возвращенного свойством DialogResult, определите, требуется ли извлекать сведения из диалогового окна. Когда в диалоговом окне не используются элементы управления Button, но требуется возвращать значение свойства DialogResult, можно задать значение этого свойства.

Если форма отображается в виде диалогового окна, щелчок кнопки Закрыть (кнопка с косым крестиком в правом верхнем углу формы) приводит к скрытию формы и установке для свойства DialogResult значения DialogResult.Cancel. Метод Close не вызывается автоматически, когда пользователь нажимает кнопку Закрыть или устанавливает значение свойства DialogResult. Вместо этого форма становится скрытой и может быть отображена снова, при этом не требуется создавать новый экземпляр диалогового окна. Из-за этого поведения необходимо вызвать метод формы Dispose, если форма уже не нужна приложению.

Примечание

Можно переопределить значение, назначаемое свойству DialogResult при нажатии кнопки Закрыть путем установки свойству DialogResult значения в обработчике событий Closing формы.

См. также

Задачи

Практическое руководство. Создание диалоговых окон во время разработки.

Практическое руководство. Закрытие диалоговых окон и сохранение введенных пользователем данных

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

Другие ресурсы

Диалоговые окна в Windows Forms