Как заблокировать фокус приложения .net для конкретного элемента управления? Например, если у меня есть форма с 5 текстовыми полями, и я хочу, чтобы они были заполнены в определенном порядке, как я могу остановить кого-то, кто находится в ящике 1, с помощью табуляции/щелчка на поле 2 или нажатия OK или Отмена или что-либо еще ? Есть ли простой способ, или мне нужно вручную отключить/включить каждый другой элемент управления в соответствующее время?Как вы «блокируете» фокус формы для определенного элемента управления?
Проблема с очевидным решением (сброс фокуса при потере фокусировки) является то, что MSDN говорит, что вы можете заблокировать ваш компьютер таким образом:
(Источник: http://msdn.microsoft.com/en-us/library/system.windows.forms.control.leave.aspx)
Внимание:
Не пытайтесь установить фокус из обработчиков событий Enter, GotFocus, Leave, LostFocus, Validating или Validated. Это может привести к тому, что ваше приложение или операционная система перестанут отвечать на запросы. Для получения дополнительной информации см. Раздел WM_KILLFOCUS в разделе «Справочная информация по клавиатуре» и раздел «Сообщения об ошибках» в разделе «О сообщениях и очередях сообщений» в библиотеке MSDN по адресу http://msdn.microsoft.com/library.