У меня есть приложение с текстовым полем и кнопкой.Когда я нажимаю ENTER в текстовом поле, я хотел бы установить фокус на кнопке (используя обход), но когда кнопка получила фокус, выполните команду.Я не хочу выполнять команду, когда кнопка получила фокус.Вот мой код:
View1.xaml
<TextBox PreviewKeyDown="UIElement_OnPreviewKeyDown"/>
View1.xaml.cs
private void UIElement_OnPreviewKeyDown(object sender, KeyEventArgs e)
{
if (e.Key != Key.Return) return;
TraversalRequest tRequest = new TraversalRequest(FocusNavigationDirection.Next);
UIElement keyboardFocus = Keyboard.FocusedElement as UIElement;
keyboardFocus?.MoveFocus(tRequest);
}
View2.xaml
<Button Content="Testbutton" Command="{Binding TestCommand}"/>
View2Vm
class View2Vm : BaseVm
{
public RelayCommand TestCommand { get; set; }
public View2Vm()
=> TestCommand = new RelayCommand(x => { MessageBox.Show("Message"); });
}
Как установить фокус на кнопку без выполнения команды?Спасибо