Как запретить пользователям закрывать форму? (МС VS С# 2010)

Возможный дубликат:
Как отключить Alt + Форма закрытия F4?

Помогите мне, пожалуйста.

Как сделать модальную форму, закрывающуюся только из кода программы. Я хочу предотвратить закрытие формы, когда пользователь нажимает Alt+F4 и т. д.

Я использую MS VS С# 2010.


person Artem    schedule 05.08.2011    source источник
comment
С точки зрения пользователя, позвольте мне добавить совет, не относящийся к теме: если пользователю не разрешено закрывать форму, то, по крайней мере, убедитесь, что ваша форма не имеет значка закрытия [X]. , ни кнопку Закрыть или Отмена, ни что-либо еще, что указывает на то, что форму можно закрыть. Если что-то из этого присутствует, ваша форма должна закрываться, когда пользователь запрашивает ее. (Извините, если это звучит покровительственно — возможно, вы уже позаботились об удобстве использования.)   -  person stakx - no longer contributing    schedule 05.08.2011


Ответы (1)


Вы можете попытаться переопределить событие formClosing.

Просто зайдите в Visual Studio, выберите главную форму вашей программы, посмотрите параметры (f4) на вкладке событий. Найдите FormClosing и обработайте новый код.

e.Cancel = true;

^ поместите это в новый блок кода, и вы предотвратите закрытие формы приложения по alt+f4

person Pieter888    schedule 05.08.2011
comment
я пытался поставить возврат; утверждение. Но это не эффект - person Artem; 05.08.2011
comment
Обновил мой ответ. Обратите внимание, что это быстрый и грязный способ сделать это, вы всегда можете специально переопределить комбинацию alt+f4 в форме. - person Pieter888; 05.08.2011
comment
Нет проблем, просто обратите внимание, что теперь вы не сможете закрыть свое приложение, используя только application.exit();. Если вы хотите закрыть программу, сначала удалите событие, а затем закройте. Я обновлю ответ, если хотите, но я бы посоветовал посмотреть здесь: stackoverflow.com/questions/14943/ - person Pieter888; 05.08.2011