С постом WPF: How to programmatically remove focus from a TextBox, я знаю, как установить TextBox
сосредоточится назад к своему родителю, используя следующий код:Установить фокус обратно на родителя?
// Move to a parent that can take focus
FrameworkElement parent = (FrameworkElement)textBox.Parent;
while (parent != null && parent is IInputElement
&& !((IInputElement)parent).Focusable)
{
parent = (FrameworkElement)parent.Parent;
}
DependencyObject scope = FocusManager.GetFocusScope(textBox);
FocusManager.SetFocusedElement(scope, parent as IInputElement);
Есть ли способ, чтобы обобщить этот код (например, функция шаблона), чтобы сделать его работать для других элементов, таких как ComboBox
, Canvas
, Image
и т.д.
Только мысль, как о прохождении объекта типа управления вместо объекта текстового поля? – samar