Winforms:没有绑定的快捷键文本

时间:2013-07-29 04:51:20

标签: c# winforms keyboard-shortcuts scintilla

好的,有很多方法可以解决我的问题。标题描述了一个。

问题是我使用智能文本框控件(ScintillaNET)创建了一个编辑器,我希望实现一个编辑 - >菜单上的“撤消”按钮也会在文本中显示其快捷键。不幸的是我不能简单地绑定它,因为它会导致撤销事件被触发两次(一旦控件自己执行,一次由我执行)。

如果用户点击它(而不是快捷键),我仍然需要按钮来运行撤消。

有三种方法可以解决这个问题:

  • 从ScintillaNET控件中取消绑定密钥(无法找到如何执行此操作)。
  • 找出一种识别按钮是否被点击或快捷键的方法。
  • 制作快捷键的外观而不实际应用。

有谁知道如何做以上其中一项?

我不想覆盖绘制方法等。

编辑:

我的问题有点不准确。它实际上是我需要检查的ToolStripMenuItem。可悲的是,它没有专注的财产。

1 个答案:

答案 0 :(得分:4)

发现它!

我在表单的构造函数中设置了ShortcutKeyDisplayString,而没有实际设置快捷键。

public EditorForm()
{
    ....
    undoToolStripMenuItem.ShortcutKeyDisplayString = "Ctrl+Z";
    ....
}