自定义菜单快捷键

我正在开发一个在其上面有一个菜单的应用程序。 我想对快捷键使用不同的方法(作为此代码段):这是用于快捷键: CTRL + N1

bool prefixSeen = false; protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { if (prefixSeen) { switch (keyData) { case (Keys.Control | Keys.D1): MessageBox.Show("New file"); prefixSeen = false; break; } } switch (keyData) { case (Keys.Control | Keys.n): prefixSeen = true; break; } return base.ProcessCmdKey(ref msg, keyData); } 

代码取自这里 。

这是我的菜单:

在此处输入图像描述

我希望在菜单项中显示(在右边对齐)快捷键(我应该将其解释为字符串)。 我怎样才能达到这个效果?

在此先感谢,祝每一个人新年快乐。

编辑: Visual Studio的内置方法是:

在此处输入图像描述

使用MenuItem.ShortCutMenuItem.ShowShortCut属性。


如果要创建自己的自定义快捷方式,这些属性将不适合您,因为它们依赖于预定的ShortCut键枚举。 在这种情况下,我建议您将其添加到菜单的文本中,没有自动的方法。


由于有人指出您正在使用ToolStripMenuItems您应该可以将ShortCutKeyDisplayString独立设置为您想要的任何内容。 您仍然需要自己处理实际的快捷方式。