У меня есть переносимая библиотека классов, где у меня есть файлы resx, содержащие строки локализации (Resources.resx, Resources.en.resx, Resources.de.resx). Затем я использую эти ресурсы в PCL LocalizationViewModel таким образом:Портативная библиотека классов и локализация resx
public string SettingsLogin
{
get { return Resources.Settings_Login; }
}
Код языка переключения выглядит следующим образом:
В PCL
CultureInfo.DefaultThreadCurrentCulture = new CultureInfo(lang);
CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo(lang);
Resources.Culture = new CultureInfo(lang);
В Win8.1 приложение
Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = lang;
Строки из LocalizationViewModel потребляются в приложении Win8.1, и он работает очень хорошо, изменение языка в среде выполнения.
Проблема возникает, когда я создаю приложение и устанавливаю приложение. Когда я запускаю установленное приложение, языковой переключатель не работает.
В файлах resx я использую встроенное действие сборки ресурсов, и я пробовал всю комбинацию действия сборки и настройки «копировать в выходной каталог».
Аналогичный проект вы можете найти в this article
У вас есть какие-либо идеи, что может быть проблема?
Как вы создали структуру каталогов или файлов-именования? Я пытаюсь сделать то же самое, но у меня проблемы с базой работы. –