1

使用 .net 2.0 是否可以从 System.Windows.Forms.Keys 代码中获取要显示的文本,例如作为菜单快捷方式?按键可以由用户设置,因此可以是任意组合键。这需要使用当地语言(不仅仅是英语)。

我已经尝试过 KeysConverter.ConvertToString,但结果似乎毫无用处。例如,它给出“OemMinus”(用于主键盘 -)或“Subtract”(用于 NumPad -)。在 F1-F12 和 AZ 之外,我们的用户很少能理解这些内容。因为该应用程序是专门为难以访问计算机的人设计的,所以它使用很多组合键作为一种访问模式,我需要能够描述键盘上的任何键。

有没有办法获得对最终用户真正有意义的键名?

4

1 回答 1

0

此类型转换器旨在供您使用,而不是您的用户。当您为菜单项使用 ShortcutKeys 属性的下拉菜单时,您将看到它的实际作用。因此,它包含的键名可能会让程序员满意,但肯定不会让用户满意。这就是为什么同一个控件还具有 ShortcutKeyDisplayString 属性,即用户实际看到的文本。

你必须自己做。

于 2012-04-24T00:27:00.757 回答