Получение раскладки клавиатуры в WPF C # - PullRequest
0 голосов
/ 31 декабря 2018

Мне нужно получить текущую раскладку клавиатуры Windows для моего приложения WPF, чтобы правильно сопоставить каждую клавишу и обрабатывать AZERTY, а также QWERTY и QWERTZ (и т. Д.)

Я заметил проблему, так как яя работаю с французским макетом (azerty), но мои окна отображаются на английском языке.

Я пробовал различные способы получить макет правильно, но без результатов:

var test1 = InputLanguageManager.Current.CurrentInputLanguage;

и

var test2 = CultureInfo.CurrentCulture;

Я пытался использовать язык ENG с макетом AZERTY, язык ENG с макетом QWERTY и язык FRA с макетом AZERTY, но результаты моих тестов всегда были разными.Я мог правильно отобразить язык (en-GB), но не макет.

1 Ответ

0 голосов
/ 31 декабря 2018

Я не уверен в вопросе - хотите ли вы знать текущую раскладку клавиатуры или вы хотите установить раскладку клавиатуры.

В обоих случаях InputLanguageManager должен помочь.

Вы можете попробовать установить менеджер языка ввода для соответствующего объекта cultureInfo.Это должно изменить раскладку клавиатуры для вашего приложения WPF

InputLanguageManager.Current.CurrentInputLanguage = new CultureInfo("fr-FR");
...