检测 left/right 箭头点击 - 桌面应用程序 Windows 8.1

Detect left/right arrow click - Desktop App Windows 8.1

我遇到了一个问题,我想在单击 left/right 箭头时更改列表视图中的数据。我向页面添加了 Key_Up 和 Key_Down 事件,但是当我按下按钮时都没有调用(在我看来,这些事件只适用于输入类型字段)。

有办法实现吗?

您尝试做的事情可能比您预期的要复杂。单个控件上的关键事件根本不足以以可靠的方式为您提供所需的数据。相反,您需要处理 Core Dispatcher 上的 Accelerator Key Activated 事件。

要完成此操作,您可以先查看我的 KeyboardHelper 服务,这样您就可以了解如何处理键盘的基础知识。但是助手没有任何东西可以处理箭头键。如果你想处理箭头键,你需要添加一些自定义逻辑。

KeyboardHelper class http://xaml.codeplex.com/SourceControl/latest#MVA/201410_UniversalApp/Dispatchr.Client/Dispatchr.Client.Shared/Services/KeyboardService/KeyboardHelper.cs

您应该注意到 VirtualKey.Left 和 VirtualKey.Right 在 VirtualKeys 枚举中是显式的。这意味着检查它们应该是同步的。我认为这应该是让这个工作所需的全部。随意复制您可以使用的任何代码 class。

祝你好运!