0

我正在尝试使用以下代码在 WPF 窗口上进行键盘命令绑定:

  RoutedCommand cmndSettings = new RoutedCommand();
  cmndSettings.InputGestures.Add(new KeyGesture(Key.S, ModifierKeys.Alt));
  CommandBindings.Add(new CommandBinding(cmndSettings, mnuSettings_Click));

  private void mnuSettings_Click(object sender, ExecutedRoutedEventArgs e)
  {
      MessageBox.Show("key pressed");
  }

如果我将此代码放在 xaml Window 的 cs 文件中,将正常工作。但是,如果我将它放在用户控件的 cs 文件中,该文件在父窗口中动态加载,则键盘事件根本不会在那里触发。我需要做什么才能让它在用户控件中工作?谢谢。

4

1 回答 1

0

要在用户控件下使用控件,容器/用户控件能够正确聚焦非常重要。否则,可能无法正常工作。

于 2013-01-24T08:36:00.643 回答