VS 2008 C # установить фокус только на одну форму - PullRequest
3 голосов
/ 08 сентября 2011

Когда отображается моя форма (AboutForm), мне нужно удерживать фокус на этой форме (пользователь должен иметь возможность только нажать кнопку ОК)!

Какая настройка необходима в VS2008?

Спасибо!

привет leon22

1 Ответ

5 голосов
/ 08 сентября 2011

Вы хотите показать модально , поэтому используйте ShowDialog() вместо Show().Это все.

Например:

using(var frm = new AboutForm()) {
    frm.ShowDialog(this);
}

важно: при использовании ShowDialog закрытие формы не Dispose() это, следовательно, using;см. MSDN:

В отличие от немодальных форм, метод Close не вызывается .NET Framework, когда пользователь нажимает кнопку закрытия формы диалогового окна или устанавливает значение свойства DialogResult.Вместо этого форма скрыта и может быть показана снова без создания нового экземпляра диалогового окна.Поскольку форма, отображаемая в виде диалогового окна, скрыта, а не закрыта, необходимо вызвать метод Dispose формы, когда форма больше не нужна вашему приложению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...