У меня есть ToolStripMenuItem
, у которого есть ShortcutKeys
Ctrl + Oemcomma (т. Е. Ctrl+,
). Я хочу показать этот ярлык рядом с именем элемента, чтобы пользователь мог видеть этот ярлык. К несчастью, это показано как Ctrl+Oemcomma
, а не как более понятное Ctrl+,
.Как получить локализованное имя клавиши клавиатуры в VS C#
Существует свойство ShortcutKeyDisplayString, которое переопределяет автоматически создаваемую строку, так что можно ее исправить. Но как только приложение запускается на языке, который не вызывает контрольный ключ Ctrl
(например, в германии он называется Strg
), что ShortcutKeyDisplayString выглядит неправильно, поскольку все другие автоматические созданные ярлыки-описания переводятся (т.е. если в english OS описание отображается как Ctrl+S
, в немецкой ОС оно отображает Strg+S
).
Есть функция, которая возвращает локализованное имя ключа, чтобы я мог использовать это для установки ShortcutKeyDisplayString? То есть Я ищу функцию, которая возвращает Ctrl
в английской ОС и Strg
в немецкой ОС и т. Д. Я пробовал System.Windows.Forms.Keys.Control.ToString()
, но это, конечно, просто возвращает Control
.