如何从windows Phone 7获取当前语言

本文关键字:获取 语言 Phone windows | 更新日期: 2023-09-27 18:16:11

我想获得当前的语言。我试过这样。

  Console.WriteLine("Tese 1==> " + CultureInfo.CurrentCulture.EnglishName);
Console.WriteLine("Test 2==> " + CultureInfo.CurrentUICulture.EnglishName);

这里我得到了类似English(United States)的输出。

但我只想要"英语"。如何单独掌握语言。

现在我使用其他方法来获取Output。

currentCulture = CultureInfo.CurrentUICulture.EnglishName;
            string[] values = currentCulture.Split('(').Select(sValue => sValue.Trim()).ToArray();
            Console.WriteLine("Language ==> " + values.ElementAt(0));

是否有任何默认方法可以单独获取当前语言。

如何从windows Phone 7获取当前语言

CurrentCulture获取中性区域性并使用其名称:

var culture = CultureInfo.CurrentCulture;
if (!culture.IsNeutralCulture) 
    culture = culture.Parent;
Console.WriteLine(culture.EnglishName);

例如,对于"en-us"或"en-gb",父区域性是名称为"English"的"en"。

看这里:如何从代码中获得Windows Phone系统语言?

原始答案:

System.Threading.Thread.CurrentThread.CurrentCulture

很遗憾,您不能直接拥有它。使用DisplayName属性or可以获得格式为language (country/region)的区域性名称使用Name属性可以获得格式languagecode-country/regioncode的区域性名。为了获得您想要的输出,您需要manipulate您从属性中获得的字符串。