如何在 WPF 应用程序中按下按键后执行命令并更改焦点

发布于 2024-11-09 10:59:27 字数 110 浏览 0 评论 0原文

我有一个使用 MVVM Light 的 WPF 应用程序,我希望在视图模型上执行命令,并在用户按 ALT+SHIFT+C 时将键盘焦点更改为特定控件。

是否有可能以一种优雅的方式实现这一点?

I have a WPF app that uses MVVM Light and I wish to both execute a command on the view model and change the keyboard focus to a specific control when the user presses ALT+SHIFT+C.

Is it possible to achieve this in an elegant way?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

等风也等你 2024-11-16 10:59:27

这取决于快捷键的创建方式(如果它像 Visual Studio 或者更像 Windows - 这意味着您必须只按住 ALT 或所有键)。

但无论逻辑如何,您都必须首先将事件绑定到命令(可能是某个控件的事件按键)。
在 MVVM Light 中,您必须将 Interaction.Triggers 与 EventToCommand 一起使用(google 和 SO 上有很多解释)

逻辑将放在您的命令中。
然后是依赖属性,如下所示此处 可以用来获得焦点。

It depends on how the shortcut key is created (if it's like Visual Studio or more like Windows - it means if you have to hold only ALT or all the keys).

But whatever the logic, You will have to first bind an Event to a Command (it might be the event keydown of one of your controls).
In MVVM Light, you will have to use Interaction.Triggers with EventToCommand (there's a lot ot explanations on google and SO)

The logic would be put here in you command.
Then a dependecy property as show here could be implemented for getting the focus.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文