【问题标题】:WPF input gestureWPF 输入手势
【发布时间】:2010-10-16 20:16:39
【问题描述】:

我正在开发一个 WPF 应用程序,我在其中维护了一个带有输入手势(即键盘快捷键)的菜单栏。

对于“另存为”菜单项,我根据用户的要求保留了 Ctrl+A。只要焦点在主窗口上,它就可以正常工作。

现在我的问题是,假设用户已经在窗口中的某个列表框中导航,如果他按 Ctrl+A,则选择所有功能将用于列表框并且不会调用“另存为”对话框(正如我所做的那样此输入手势的命令绑定)

知道如何避免这种情况吗?是的,我不能改变我的输入手势。它必须是 Ctrl+A。 :)

谢谢

【问题讨论】:

    标签: wpf xaml


    【解决方案1】:

    我认为您可以更改列表框对象上的命令绑定以删除该命令的绑定。查看 ListBox.CommandBindings 列表。

    您还可以关闭 ListBox 上的 Focusable,使其永远不会接收键盘命令。

    您还可以查看事件模型。当预览事件从逻辑树的根“冒泡”时,您可能会捕捉到 keydown,然后它们从最终元素向下传递。它们可以在上升或下降过程中标记为已处理。

    【讨论】:

      猜你喜欢
      • 2018-07-29
      • 2011-05-09
      • 1970-01-01
      • 1970-01-01
      • 2011-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-20
      相关资源
      最近更新 更多