【发布时间】:2017-02-09 10:42:56
【问题描述】:
我正在使用 VS 2015 开发 WPF 应用程序,用户可以在其中更改应用程序语言在运行时。
目前我们还没有使用多个线程,但也许这会到来。
最大的问题是,CultureInfo 类的哪个属性最好为应用程序的所有线程设置?
有四个候选人:
CultureInfo.CurrentCulture
CultureInfo.CurrentUICulture
CultureInfo.DefaultThreadCurrentCulture
CultureInfo.DefaultThreadCurrentUICulture
根据这个article,它似乎是 CultureInfo.DefaultThreadCurrentCulture 和 CultureInfo.DefaultThreadCurrentUICulture,但我不确定。
提前致谢!
【问题讨论】:
-
WPF 是 tricky(重复?)。
-
.NET 4.6 的重大变化,标记的答案不再正确。文化现在自动流动,最好的事情就是什么都不做。当然,你不能改变已经在运行的线程的文化,这种文化没有改变。
-
@HansPassant,很高兴知道,谢谢。我们仍在使用 4.5 和所有那些糟糕的解决方法。
-
4.5 不再受 Microsoft 支持,升级到 4.6 非常简单。
标签: c# wpf multithreading