Как сосредоточиться в WPF с WindowsFormHost
У меня есть такая простая настройка:
<StackPanel>
<TextBox Text="wpf1" PreviewLostKeyboardFocus="TextBox_PreviewLostKeyboardFocus" />
<TextBox Text="wpf2" PreviewLostKeyboardFocus="TextBox_PreviewLostKeyboardFocus" />
<WindowsFormsHost>
<wf:TextBox Text="winforms" />
</WindowsFormsHost>
</StackPanel>
private void TextBox_PreviewLostKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
{
e.Handled = true;
}
Три текстовых поля, два WPF и один WinForm. Я не могу переместить фокус между двумя желаемыми текстовыми полями WPF, но я могу переместить фокус на текстовое поле WinForm. Событие PreviewLostKeyboardFocus
даже не срабатывает при переходе из текстового поля WPF в текстовое поле WinForm. Любые подсказки, почему и как это можно решить?
РЕДАКТИРОВАТЬ
Я заметил что WindowsFormsHost.PreviewGotKeyboardFocus
срабатывает первым, когда фокус снова покидает WindowsFormsHost. Это странно. Может быть, это ошибка?