UIElement.GotFocus Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит, когда элемент UIElement получает фокус. Это событие возникает асинхронно, поэтому фокус может снова переместиться до завершения восходящего движения.
// Register
event_token GotFocus(RoutedEventHandler const& handler) const;
// Revoke with event_token
void GotFocus(event_token const* cookie) const;
// Revoke with event_revoker
UIElement::GotFocus_revoker GotFocus(auto_revoke_t, RoutedEventHandler const& handler) const;
public event RoutedEventHandler GotFocus;
function onGotFocus(eventArgs) { /* Your code */ }
uIElement.addEventListener("gotfocus", onGotFocus);
uIElement.removeEventListener("gotfocus", onGotFocus);
- or -
uIElement.ongotfocus = onGotFocus;
Public Custom Event GotFocus As RoutedEventHandler
<uiElement GotFocus="eventhandler"/>
Тип события
Комментарии
Мы рекомендуем по возможности использовать перенаправленные события фокуса UIElement вместо событий FocusManager .
Фокус может иметь только один элемент пользовательского интерфейса одновременно.
Элемент управления может получить фокус, когда другой элемент управления теряет фокус, изменяется представление приложения, пользователь переключает приложения или пользователь взаимодействует с системой таким образом, что приложение больше не находится на переднем плане.
LostFocus поднимается до GotFocus.
Если вы используете функции создания элементов управления или создания элементов пользовательского интерфейса, а также обработку GotFocus в контейнере, например Panel или GridView, может потребоваться проверка OriginalSource на данные события, чтобы определить, какой элемент композиции действительно получил фокус.
У GotFocus нет специализированных данных о событиях. При обработке GotFocus может потребоваться определить, что именно код пользователя или приложения привел к тому, что элемент получил фокус. Чтобы определить это в обработчике, приведите отправителя события к объекту Control и проверка FocusState.
Фокус клавиатуры особенно актуален для обработки событий клавиатуры, так как источником событий клавиш KeyUp и KeyDown может быть только текущий uiElement, ориентированный на клавиатуру. Приложения могут вызывать Focus в качестве действия инициализации, чтобы ключевые события в приложении в целом можно было использовать для обнаружения ключей доступа или сочетаний клавиш. Дополнительные сведения см. в статье Взаимодействия с помощью клавиатуры.
GotFocus — это перенаправленное событие. Дополнительные сведения о концепции перенаправленных событий см. в статье Общие сведения о событиях и перенаправленных событиях.
Определенные среда выполнения Windows элементы управления могут иметь обработку на основе классов для события GotFocus. В этом случае элемент управления, вероятно, имеет переопределение для метода OnGotFocus. Обычно событие помечается обработчиком класса, а событие GotFocus не вызывается для обработки обработчиками пользовательского кода в этом элементе управления. Элементы управления могут обрабатывать событие для загрузки свойства визуального состояния, отображающего прямоугольник фокуса.
Прямоугольник фокуса элемента управления — это важный визуальный компонент, который помогает обеспечить специальные возможности, определяя текущий элемент фокусировки и указывая, где пользователь находится в последовательности вкладок пользовательского интерфейса приложения. В некоторых случаях значение FocusState действия фокуса определяет, должен ли отображаться видимый индикатор фокуса.
Дополнительные сведения о том, как работает обработка событий на основе классов, см. в статье Обзор событий и перенаправленных событий. Дополнительные сведения о последовательностях вкладок и специальных возможностях см. в разделе Специальные возможности клавиатуры.
Применяется к
См. также раздел
- RoutedEventArgs
- GettingFocus
- GettingFocusEvent
- LostFocus
- LosingFocusEvent
- LosingFocus
- Focus(FocusState)
- AddHandler(RoutedEvent, Object, Boolean)
- Общие сведения о событиях и перенаправленных событиях
- Взаимодействие с помощью клавиатуры
- Перемещение фокуса с помощью клавиатуры, геймпада, пульта дистанционного управления и средств специальных возможностей
- Программное перемещение фокуса