FrameworkElement.OnGotFocus(RoutedEventArgs) Метод

Определение

Вызывается, когда необработанное событие GotFocus достигает этого элемента на своем пути.Invoked whenever an unhandled GotFocus event reaches this element in its route.

protected:
 override void OnGotFocus(System::Windows::RoutedEventArgs ^ e);
protected override void OnGotFocus (System.Windows.RoutedEventArgs e);
override this.OnGotFocus : System.Windows.RoutedEventArgs -> unit
Protected Overrides Sub OnGotFocus (e As RoutedEventArgs)

Параметры

e
RoutedEventArgs

Объект класса RoutedEventArgs, содержащий данные о событии.The RoutedEventArgs that contains the event data.

Комментарии

В отличие от некоторых других методов *, предоставляемых базовыми элементами, OnGotFocus имеет реализацию по умолчанию.Unlike some other On* methods exposed by the base elements, OnGotFocus does have a default implementation. В частности, у него есть реализация, которая переопределяет реализацию NULL на следующем уровне базового элемента вниз, OnGotFocus.Specifically, it has an implementation that overrides the null implementation in the next level of base element down, OnGotFocus. При вызове OnGotFocus задает соответствующее поведение фокуса для этого элемента в случаях, когда событие произошло из текущего элемента из-за фокуса клавиатуры.When invoked, OnGotFocus sets appropriate focus behavior on this element in cases where the event originated from the current element due to keyboard focus. Обработчик OnGotFocus не помечает аргументы события как обработанные, даже если фокус установлен на текущий элемент.The OnGotFocus handler does not mark the event arguments as handled, even when focus is set to the current element. Если источником события был другой элемент в дереве (не текущий элемент), обработчик не выполняет никаких действий.If the event's source was another element in the tree (not the current element), the handler does nothing.

Этот метод можно переопределить, чтобы изменить поведение фокуса по умолчанию для элемента, но следует иметь в виду, что изменение поведения фокуса таким образом может быть лучше выполнено, не позволяя элементу получать фокус (см. Focusable).You can override this method in order to change the default focus behavior on your element, but be aware that changing focus behavior in this way might be better accomplished by not allowing the element to be focusable at all (see Focusable).

Примечания для тех, кто наследует этот метод

Если вы планируете пометить событие как обработанное в аргументах, следует иметь в виду последствия обработки событий в других родительских элементах дерева элементов.If you intend to mark the event handled in the arguments, you should be aware of consequences on event handling in other parent elements in the element tree. Так как этот обработчик работает с событием с восходящей маршрутизацией, установка фокуса на текущий sender для аргументов события может быть неприемлемой.Because this handler acts on an event with a bubbling routing, setting the focus to the current sender per the event arguments may not be appropriate. Фокус может потребовать перехода либо к составному дочернему элементу, либо к родительскому элементу в зависимости от композиции определенных элементов управления.Focus might need to go to either a composite child element or to a parent element, depending on the compositing of certain controls. Поэтому Пометка события фокуса как обработанного рекомендуется только в том случае, если все визуальное дерево, в котором выполняется маршрутизация события, является частью компоновки разрабатываемого элемента управления.Therefore marking a focus event as handled is only recommended if the entirety of the visual tree that the event is routing through is part of compositing of a control that you authored.

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

Дополнительно