windows-8 - 如何在 Windows 8 应用程序中指定区域性的根本性改变

标签 windows-8

来自 App.cs 中的 OnLaunched

正在运行...

Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "da-DK";

但这些都不是......

System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = new System.Globalization.CultureInfo("da-DK");
System.Globalization.CultureInfo.DefaultThreadCurrentCulture = new System.Globalization.CultureInfo("da-DK");

我没有反射(reflect)它,但后者不应该同样好吗?

我这里漏掉了一点吗?

最佳答案

两者的区别在于System.Globalization.CultureInfo.DefaultThreadCurrentCulture = new System.Globalization.CultureInfo("da-DK"); 用于定义新创建的线程的默认区域性。这意味着已经运行的线程不会受其影响。要更改已运行线程的区域性,您需要使用该正在运行的线程内的 System.Globalization.CultureInfo.CurrentCulture 属性。

Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "da-DK";

范围更广,也会修改已经运行的线程。但它更多地被用作应用程序中的“语言选择”,而不是作为 CultureInfo 的替代品(CultureInfo 不仅用于语言,还用于转换、指标、格式等)

关于windows-8 - 如何在 Windows 8 应用程序中指定区域性的根本性改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12106919/

相关文章:

c# - Windows 8 Metro 打开网站/mailto C#

c# - Surface 上的 KitaroDB

javascript - 在 win8 应用程序中设置 <video> 元素的样式 (html/js)

css - 如何使 WinJS.UI.ListView 跨屏幕分辨率缩放并显示水平滚动条?

javascript - 数据绑定(bind)到 flexbox

windows - 如何将 WinRT 异步任务集成到现有的同步库中?

javascript - 如何在 Metro 应用程序中设置 Listview 项目的焦点?

javascript - 由于搜索尚未运行和激活时如何调试应用程序

Azure Development Fabric 日志代理在启动时崩溃

installation - Windows 8驱动程序安装和目录/签名验证