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.

Если вы используете элементы управления compositing или ui compositing и обработку GotFocus в контейнере, например Panel или GridView, определите, какой элемент в композиции получил фокус, проверив OriginalSource на данных события.

Так как в GotFocus событии нет специализированных данных о событиях, можно проверить свойство UIElement.FocusState , чтобы определить, был ли он кодом пользователя или приложения, который вызвал фокус элемента.

private void panel_GotFocus(object sender, RoutedEventArgs e)
{
    UIElement uie = e.OriginalSource as UIElement;
    FocusState fc = uie.FocusState;
}

Фокус клавиатуры особенно подходит для обработки событий клавиатуры, так как только текущий uiElement, ориентированный на клавиатуру, может быть источником ключевых событий KeyUp и KeyDown. Приложения могут вызывать UIElement.Focus(Microsoft. Пользовательского интерфейса. Xaml.FocusState) в качестве действия инициализации, чтобы ключевые события в приложении в целом можно использовать для обнаружения ключей доступа или акселератора. Дополнительные сведения см. в разделе взаимодействия с клавиатурой.

GotFocus — это перенаправленное событие. Дополнительные сведения о концепции перенаправленного события см. в разделе "События" и обзор перенаправленных событий.

Определенные элементы управления среда выполнения Windows могут обрабатывать событие на основе GotFocus классов. Если да, элемент управления, вероятно, имеет переопределение для метода OnGotFocus. Обычно событие помечается обработчиком классов, и событие GotFocus не вызывается для обработки обработчиками пользовательского кода в этом элементе управления. Элементы управления могут обрабатывать событие для загрузки свойства визуального состояния, отображающего прямоугольник фокуса.

Прямоугольник фокуса элемента управления является важным визуальным компонентом, который помогает специальные возможности, определяя текущий ориентированный элемент и указывая, где пользователь находится в последовательности вкладок пользовательского интерфейса приложения. В некоторых случаях фокус-статистика действия фокуса имеет значение для отображения видимого индикатора фокуса.

Дополнительные сведения о том, как работает обработка событий на основе классов, см. в разделе "События" и обзор перенаправленных событий. Дополнительные сведения о последовательностях вкладок и специальных возможностях см. в разделе "Специальные возможности клавиатуры".

Применяется к

См. также раздел