我有Portable类库,其中我有包含本地化字符串的resx文件(Resources.resx,Resources.en.resx,Resources.de.resx)。然后我以这种方式在PCL LocalizationViewModel中使用这些资源:
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应用程序中使用,它运行良好,也可以在运行时更改语言。
当我创建App包并安装应用程序时出现问题。当我运行已安装的应用程序时,语言切换无法正常工作。
在resx文件中,我使用嵌入式资源构建操作,我尝试了构建操作和"复制到输出目录的所有组合"设置。
您可以在this article
中找到类似的项目你知道可能出现什么问题吗?