c# - 命令输入绑定(bind)有效,但快捷方式未显示在菜单项中

标签 c# wpf mvvm command

问题:

我正在使用 Josh Smith 的 implementation使用路由命令的 MVVM 命令。我有一个绑定(bind)到命令的 MenuItem

输入绑定(bind)在父窗口中定义。当我运行程序时,我可以使用键盘快捷键,但MenuItem旁边不显示Control+O MenuItem header 。

图片:

Where is the Ctrl+O?

代码:

命令绑定(bind):

 <Window.CommandBindings>
    <cmd:CommandSinkBinding Command="vm:MainVM.OpenDialogCommand" />
</Window.CommandBindings>

<Window.InputBindings>
    <KeyBinding Command="vm:MainVM.OpenDialogCommand" Key="O" Modifiers="Ctrl"/>
</Window.InputBindings>

菜单项:

<MenuItem Header="Open" Command="vm:MainVM.OpenDialogCommand" />

注意: MenuItem 已设置样式,但删除样式不会产生任何影响。

最佳答案

试试这个

<MenuItem Header="Open" Command="vm:MainVM.OpenDialogCommand" 
       InputGestureText="Ctrl+O" />

关于c# - 命令输入绑定(bind)有效,但快捷方式未显示在菜单项中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4343208/

相关文章:

c# - 在 SQL Server 数据库 C# 中保存表情

c# - 在 Prism 应用程序的多个模块中使用的模型应该放在哪里?

c# - 通用 Windows 应用上的 ViewModel (MVVM) 绑定(bind)页面

c# - 如何从UI将项目添加到ComboBox?

c# - 双显示器的持久窗体位置和大小

c# - NUnit 嵌套集合比较

c# - 在 CsvHelper.CsvWriter 中手动添加标题

WPF:如何将事件标题栏颜色设置为窗口背景?

c# - 如何滚动到 DataGrid 的最后一列?

c# - 将样式中的 Setter 值绑定(bind)到主模型