使用 ApplicationCommands 类时,我可以免费获得很多东西。文本、快捷方式和本地化。然而,似乎有(或者我还没有找到)一种方法来指定您将通过 _ 表示法指定的字符(例如 E_xit)。有没有办法指定该字符,例如
ApplicationCommands.New ?
或者是使用
CustomRountedUICommand
我可以在哪里简单地为 name 属性指定 _New?
编辑:
在这里澄清我的 xaml 文件的提取:
<MenuItem Name="NewProject" Command="{Binding MenuNewProject}" />
MenuNewProject 是添加了 InputGesture 的 ApplicationCommand.New。但是如何在不设置菜单标题的情况下添加下划线(这已经通过命令绑定完成)?
编辑2:
正如已经指出的那样,这显然是一个菜单问题。现在的问题是:是否有替代文本中的_来指定加速键?我在 MenuItem 类中没有找到任何东西。
最终解决方案:
要么使用:
AccessKeyManager.Register('N',MenuItem)
但松开显示的下划线 N 或设置
MenuItem.Header ='_New'
手动并松动本地化。不幸的是,解析 ApplicationCommands.New.Name 总是返回英文名称。ContentPresenter 类可能有一个解决方案,但这对于我的小项目来说有点过头了。