如何通过键盘快捷方式打开工具栏菜单?

我的表单上有一个空白的工具栏按钮,我在运行时添加了所有菜单和菜单项。 我需要在此工具栏的菜单中添加键盘快捷键。 我怎样才能做到这一点?

您可以在菜单项文本中使用“&”特殊符号来标记键。 看看这个简单的例子: http : //www.java2s.com/Code/CSharp/GUI-Windows-Form/Addshortcutkeytoamenuitem.htm

编辑:

1)如果下拉按钮中有一个文本,则足以设置’&’符号,就像菜单一样,使其下降。 因此,在此特定情况下,在代码中的某个点分配给该按钮的“Actions”字符串必须变为“&Actions”。

2)如果它只是图像下拉(按钮上没有文字可见),不幸的是’&’符号技巧不起作用。 但你可以这样做,例如,这样的事情。 伪代码

protected override void OnKeyDown(KeyEventArgs e) { if (e.Alt && e.KeyCode == Keys.A) { toolStripDropDownButton1.ShowDropDown(); } base.OnKeyDown(e); } 

希望这可以帮助。

你没有在这里展示你正在做什么的代码。 我会捅一下:

 ToolStripMenuItem tsm = new ToolStripMenuItem("&Test Menu"); tsm.ShortcutKeys = ((Keys)((Keys.Control | Keys.T))); 

tbrDropDownButton.Text = UCMDefinitions.GetCaption(textId) ,使用tbrDropDownButton.Text = "&" + UCMDefinitions.GetCaption(textId) 。 这将指定菜单项的第一个字母作为快捷键。 如果有多个项目具有相同的快捷键,则用户必须在按下快捷键一次或多次后按Enter键。