FrameworkElement.OnGotFocus Method (RoutedEventArgs)
Invoked whenever an unhandled GotFocus event reaches this element in its route.
Assembly: PresentationFramework (in PresentationFramework.dll)
Unlike some other On* methods exposed by the base elements, OnGotFocus. When invoked, sets appropriate focus behavior on this element in cases where the event originated from the current element due to keyboard focus. The 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.does have a default implementation. Specifically, it has an implementation that overrides the null implementation in the next level of base element down,
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).
Notes to Inheritors:
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. 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.
Available since 3.0