处理WPF菜单HeaderStringFormat和Access Keys等

好的。 所以我希望我的应用程序在其主菜单中显示“保存”和“另存为…”项目,就像Visual Studio一样; 即“保存{当前文件}”和“保存{当前文件}为…”

我还想拥有普通的访问密钥(分别为“S”和“A”)。

我想出了两个解决方案,但两者都不是很理想。

  • 我可以在MainWindowViewModel中创建所有主菜单,而不是仅在xaml中创建主菜单,因此我可以完全控制生成的MenuItems中的内容。 但是,我觉得这会违反MVVM(我这次试图非常严格地遵守),因为我必须在ViewModel中包含对每个MenuItem图标的引用。 再加上看起来有点凌乱。

  • 我可以像这样规定这两个特定的MenuItem(以及可能是未来的)的标题,但后来我最终获得了一个MenuItem,它不仅在标题中有下划线,而且还不包含访问键。

 

我该怎么办?

Whelp,想通了。 至少关于如何使用XAML中描述的整个主菜单完成它。 只是使标题内容成为AccessText控件而不是字符串,它就像一个魅力。

      
Interesting Posts