Я пытаюсь сохранить (и позже загрузить) сочетания клавиш, используя строки, в файле конфигурации.
Я работаю на немецком компьютере, и моя системная культура de-DE. Конечно, это дает противоречивые результаты преобразования по сравнению с другими системами, как, например, клавиша Ctrl
на немецком языке называется Strg
. Поэтому я хочу сохранить строки после преобразования с помощью InvariantCulture.
Я пытаюсь преобразовать Enum из Keys в строку, используя класс KeysConverter:
var conv = new KeysConverter();
var out = KeysConverter.ConvertToInvariantString(Keys.Control | Keys.M);
MessageBox.Show(out);
Но это просто выводит Strg+M
вместо ожидаемого Ctrl+M
.
Я также попытался использовать
var out = KeysConverter.ConvertToString(null, System.Globalization.CultureInfo.InvariantCulture, Keys.Control | Keys.M);
, который дал мне точно такой же результат.
Возможно, я что-то совершенно не понимаю, но в данный момент я просто не могу обернуть голову вокруг этого. У кого-нибудь есть подсказка о том, что я делаю неправильно, или он может объяснить мне это поведение?
Спасибо и всего наилучшего, iSnackyCracky