2017-01-20 15 views
0

У меня есть приложение UWP в Windows Store. Я установил несколько языков с помощью многоязычного инструментария приложений. Но почему-то локализация просто не работает. Я несколько раз пытался настроить язык отображения на один из моих поддерживаемых языков, но он просто не работает.Локализация не работает в моем приложении UWP

Я также создал образец проекта, чтобы каждый мог мне помочь. Вот ссылка- https://1drv.ms/u/s!Ar2Oon4jkTNAqdkRe4R6gpr6DOXRDw

+0

Вы пробовали, если он работает на эмуляторе? Вы пытались сменить язык на своем телефоне, а затем установить приложение (не после установки)? – Romasz

ответ

1

Если вы используете «новую» систему локализации, основанную на x:Uid введенной в ОС Windows 8.1 приложений, пожалуйста, посмотрите на следующем уроке, который дает вам пример в деталях: https://www.codeproject.com/Articles/862152/Localization-in-Windows-Universal-Apps

Ваша ошибка в основном - это имя в файле resw. У вас есть TextBlock в вашем проекте, как это:

<TextBlock x:Uid="Hi" /> 

Затем в ваш RESW-файл ваша переведенная строка должна иметь:

  • Имя Hi.Text (потому что вы хотите, чтобы локализовать TextProperty блока)
  • значение, которое вы хотите показать (например Привет на английском языке, Hallo на немецком языке и т.д.)

Эта система позволяет вам изменить свой пользовательский интерфейс на основе языка, например. вы можете добавить в немецкий файл resw только вторую строку с именем Hi.Foreground и значением Green, а строка будет зеленой, но только на немецком языке.

В своем проекте он показывает всегда Привет, потому что у вас есть это как статическое значение:

<TextBlock x:Uid="Hi" Text="Hi"></TextBlock> 

Если удалить Text="Hi", то ничего не будет отображаться в текущем проекте из-за того, что я объяснил выше.