Первое, что делает item.Focus()
, это звонить Keyboard.Focus( this )
. Если это не удается, то он звонит на FocusManager
, как ответил декастель.
Следующее скопировано из вида дизассемблера в Отражатель .
Это от UIElement
(UIElement3D
то же самое):
public bool Focus()
{
if (Keyboard.Focus(this) == this)
{
return true;
}
if (this.Focusable && this.IsEnabled)
{
DependencyObject focusScope = FocusManager.GetFocusScope(this);
if (FocusManager.GetFocusedElement(focusScope) == null)
{
FocusManager.SetFocusedElement(focusScope, this);
}
}
return false;
}
Это от ContentElement
:
public bool Focus()
{
return (Keyboard.Focus(this) == this);
}