1

Я только что закончил свое приложение для Windows Phone. Теперь я хочу добавить его в магазин. Моя проблема заключается в том, что приложение переведено на 34 языка, и я должен предоставить экраны для каждого из этих языков. Всякий раз, когда я хочу изменить Культуру своего телефона, я должен перезапустить его - это занимает слишком много времени. Моя другая идея заключалась в том, чтобы изменить культуру работающего потока в коде, но я не мог найти рабочего решения. ты можешь помочь мне с этим? Я не хочу тратить два дня на создание экранов для магазина. o у вас есть какая-либо другая идея, которую я мог бы достичь, или вы могли бы предоставить какой-то код, который работает на WP7, который изменяет культуру?Экраны для Windows Phone Store

+0

У меня только 5 языков в моем приложении, но я согласен: вручную делать все эти скриншоты является PITA. – Soonts

+0

Btw, требуется ли загружать языковые скриншоты? Почему бы не создать важные и не использовать английский для остальных? Другой способ попросит ваших бета-тестеров/переводчиков выполнить эту работу за вас. – sibbl

+0

Приложение не будет передавать Store certyfication, если экраны не переведены. Если у вас есть текстовое содержимое (которое приходит от пользователя) в вашем приложении, я также предлагаю вам заметить его в примечании к Store Testers, если вы не хотите его переводить. Случилось так, что мое приложение было перегружено, потому что у меня были некоторые данные на английском языке. Если я оставлю такую ​​заметку, все будет хорошо. - Я уже делал это для win8 – walkerbox

ответ

1

Вы можете изменить культуру, но вы не можете заставить пользовательский интерфейс обновлять его автоматически. Итак, вы должны написать код для изменения локализации управления во время выполнения. В принципе, будет одна функция, которая обновляет элементы управления с выбранной культурой.

+0

Так что переходить на другую страницу нужно? Это не так, поэтому весь этот вопрос :( – walkerbox

+0

Нет, переход не помог. Приложение должно перезапуститься, чтобы применить его. [Проверить этот ответ] (http://social.msdn.microsoft.com/Forums/windowsapps/en -US/10b722b3-6c19-4ece-bb7f-27d4bd291235/change-application-language-at-runtime? Forum = winappswithcsharp) разработчика XAML. Сделайте это с помощью рук - это совсем не сложно. – crea7or

+0

Хм, как я могу изменить контролирует локализацию во время выполнения? Как правило, изменение культуры работает только для текущего приложения. После перезагрузки культура имеет старое значение в WP7. – walkerbox

2

Вы можете использовать следующий код, чтобы изменить текущую культуру:

CultureInfo currentCulture = new CultureInfo("Culture_Code"); 
Thread.CurrentThread.CurrentUICulture = currentCulture ; 
+0

Он не работает на Windows Phone 7.8. Он меняет культуру, но когда я перезапускаю приложение, у культуры есть старая ценность. – walkerbox

+0

, когда вы меняете культуру из приложения, просто сохраните код культуры в изолированном хранилище. Когда вы перезагружаете приложение, просто проверяйте код культуры в изолированном хранилище при запуске события в app.xaml.cs.If Изолированное хранилище имеет код культуры, применяемый с использованием вышеуказанного кода. –

+0

Вы можете использовать этот код .private аннулированию Application_Launching (объект отправителя, LaunchingEventArgs е) { если (IsolatedStorageSettings.ApplicationSettings.Contains ("CulCode")) { CultureInfo CurrentCulture = новый CultureInfo ("Culture_Code"); Thread.CurrentThread.CurrentUICulture = currentCulture; }} –

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