UWP:获取当前的文化信息

tes*_*ing 4 .net c# xamarin.forms uwp windows-10-universal

根据博客条目CultureInfo 在 UWP 中的更改,对于 UWP,CultureInfo 中有一些更改。我可以使用GlobalizationPreferencesCultureInfo正确获取吗?

public CultureInfo GetCurrentCultureInfo()
{
    return new CultureInfo(Windows.System.UserProfile.GlobalizationPreferences.Languages[0].ToString());
}
Run Code Online (Sandbox Code Playgroud)

取自这个例子

Gra*_*eng 5

我可以使用 GlobalizationPreferences 来正确获取 CultureInfo 吗?

是的,你可以,我已经测试了你的方法,它在我身边运行良好。

我想知道设备的当前语言(不是地区)。

您还可以使用Windows.Globalization.Language.CurrentInputMethodLanguageTag来获取当前启用的键盘布局或输入。


Ped*_*mas 5

如果您需要的是“正确的”CultureInfo(考虑到用户/计算机区域设置的信息),那么您应该使用该博客文章中的信息,或者更好的是使用 Win32 GetLocaleInfoExAPI 来检索它。

我已经撰写了该文章的第2 部分,其中包含如何使用此 API 的完整示例。