Windows Phone 8.1在代码后面手动更改资源文件

本文关键字:源文件 资源 Phone 代码 Windows | 更新日期: 2023-09-27 18:15:20

我正在开发应用程序,这需要我在Windows Phone 8.1中处理多元文化和资源。

目前它加载en语言,如果我的手机语言设置为英语,如果我改变它为法语或任何它也工作。我想做的是让用户能够改变应用程序中的语言,而不改变手机中的语言。我想有一个设置页面,当用户可以从可能性列表中选择语言。保存在一些存储设置中,并在应用程序启动后加载适当的资源。

我不明白的是如何根据存储中的一些设置加载特定的资源。

Windows Phone 8.1在代码后面手动更改资源文件

使用IsolatedStorage存储用户选择的语言字符串。

当应用程序加载时,您可以使用

将语言更改为用户选择的语言。
Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride

让我告诉你一些细节。在项目中创建一个类LacalizedStrings.cs。我们把资源文件名设为AppResources

public class LocalizedStrings
    {
        private static AppResources _localizedResources = new AppResources();
        public AppResources LocalizedResources { get { return _localizedResources; } }
    }

在你的AppResources把一个键作为ResourceLanguage和值作为en-US

现在这个值可以保存在IsolatedStorage

private void Application_Launching(object sender, LaunchingEventArgs e)
{
}

private void Application_Activated(object sender, ActivatedEventArgs e)
{
}

您可以在IsolatedStorage中检查这个值并使用它。

希望能有所帮助。