C# 本地化WP7应用程序

C# 本地化WP7应用程序,c#,silverlight,windows-phone-7,localization,C#,Silverlight,Windows Phone 7,Localization,我正在寻找本地化应用程序的方法。我看到了这个例子:但我想知道是否可以使用不同于用户在手机上设置的语言。假设用户将其语言设置为英语,但如果用户选择使用某些列表框,我希望我的应用程序以西班牙语显示界面。 你有这方面的文章吗 谢谢 这是可能的,我使用下面的代码使用我的Google Reader客户端gReadie来实现,我在应用程序启动和恢复时调用这些代码 public static void SetLanguage() { CultureInfo c = null; switch (

我正在寻找本地化应用程序的方法。我看到了这个例子:但我想知道是否可以使用不同于用户在手机上设置的语言。假设用户将其语言设置为英语,但如果用户选择使用某些列表框,我希望我的应用程序以西班牙语显示界面。 你有这方面的文章吗


谢谢

这是可能的,我使用下面的代码使用我的Google Reader客户端gReadie来实现,我在应用程序启动和恢复时调用这些代码

public static void SetLanguage() {
    CultureInfo c = null;
    switch (ViewModel.UserSettings.Language) {
    case Language.Default:
        break;
    case Language.English:
        c = new CultureInfo("en-US");
        break;
    case Language.Chinese:
        c = new CultureInfo("zh-CN");
        break;
    case Language.French:
        c = new CultureInfo("fr-FR");
        break;
    case Language.German:
        c = new CultureInfo("de-DE");
        break;
    }

    if (c != null) {
        Thread.CurrentThread.CurrentUICulture = c;
        ApplicationStrings.Culture = c;
    }
}
因此,基本上我的设置中有一个下拉列表,它绑定到语言枚举,允许用户选择他们的电话语言(默认)或支持的语言之一。
然后在应用程序启动时,我将UI线程和应用程序字符串资源文件的语言设置为与其选择相匹配。

它只是一个常规资源文件。我假设您正在阅读的教程使用了它们,这是在.NET/Silverlight中本地化的标准方法。因此有英语ApplocationString.rex,每种语言在同一文件夹中都有一个ApplicationStrings.de-de.resx。