2016-11-03 12 views
0

Я застрял на этом часами. Я гугле некоторые, и нашел это:Как программно отображать язык Windows 10?

CultureInfo culture = CultureInfo.CurrentUICulture; 

и это:

Windows.System.UserProfile.GlobalizationPreferences.Languages[0]; 

Но оба ссылаются на английском языке. Потому что английский - это первый из моих системных языковых списков. Но английский язык - это не язык отображения моей системы, а китайский.

Итак, есть ли способ программно отображать язык интерфейса Windows?

Спасибо за любую помощь.

+0

Хм, нет «системного языкового списка». Существует список языковых настроек (есть команды Move Up и Move Down). Если английский является первым в этом списке, это ваши предпочтения и то, что вы получаете от GlobalizationPreferences.Languages ​​[0]. Возможно, вам следует изменить свои настройки, нажмите «Переместить вверх/вниз», чтобы изменить этот список, возможно, вы хотите использовать Windows.Globalization.Language.CurrentInputMethodLanguageTag. –

+0

Извините за неуместное описание, я имею в виду именно список языковых предпочтений. Я попытался сделать английский языком по умолчанию, но это не сработает. Язык дисплея Windows по-прежнему остается китайским, поэтому моя система все еще показывает китайский язык. Я немного искал googled, и кажется, что я использую Windows 10 Single Language Chinese Edition, и в этом случае я могу использовать только один язык. – Hunter

ответ

0

Использование System.Globalization.CultureInfo:

  var ci = CultureInfo.InstalledUICulture; 

      Console.WriteLine("Default Language Info:"); 
      Console.WriteLine("* Name: {0}", ci.Name); 
      Console.WriteLine("* Display Name: {0}", ci.DisplayName); 
      Console.WriteLine("* English Name: {0}", ci.EnglishName); 
      Console.WriteLine("* 2-letter ISO Name: {0}", ci.TwoLetterISOLanguageName); 
      Console.WriteLine("* 3-letter ISO Name: {0}", ci.ThreeLetterISOLanguageName); 
      Console.WriteLine("* 3-letter Win32 API Name: {0}", ci.ThreeLetterWindowsLanguageName); 

WinRT

Для WinRT Я думаю, вы должны использовать ApplicationLanguages APIs, но я не могу предоставить вам код, я не в состоянии проверить, так как я бегу другую версию ofwin.

+0

Благодарим вас за быстрый ответ @Sid. Но свойство InstalledUICulture недоступно в моем коде. Мой код находится в среде Windows Runtime, которая не может ссылаться на функции в .NET Framework? Я не уверен, однако. Простите, я забыл упомянуть об этом. Я пробовал это. Есть ли другой способ? – Hunter

+0

Благодарим вас за помощь. Но я не работал. Знаешь что? Приложение Microsoft Store не использует язык отображения, и в нем используется первый список из списка языковых предпочтений. Поэтому я тоже использую его. Мне не нужно зацикливаться на этом языке. Но я оставлю этот вопрос здесь, в случае чьего-то интереса. Еще раз спасибо за ваш совет и извините за поздний ответ (работая над чем-то еще). – Hunter

 Смежные вопросы

  • Нет связанных вопросов^_^