在我的WPF应用程序中,CurrentUICulture未被Windows正确接管或错误地存储在Windows中。
Windows中的区域和语言设置位于我发现的所有地方“Deutsch(Schweiz)”。应用程序中的CurrentUICulture显示“Deutsch(Deutschland)”而不是“Deutsch(Schweiz)”。我在几台计算机上测试过它(有域用户和本地用户)。
哪里可能是问题? Windows中的这个设置有难以找到的地方吗?
重要提示:我知道我可以在应用程序中设置文化。我不需要像Thread.CurrentThread.CurrentUICulture = new CultureInfo("de-ch")
我只想了解机制的工作原理以及从何处获取信息。
以下是我的Windows设置中的一些屏幕截图:
谢谢, 阿德里安
答案 0 :(得分:1)
我认为这是微软的“设计”。
请阅读this question。对此有很高的评价意见:
请注意,微软在他们的智慧中并没有将UI分开 美国英语和(英国)英语或其他英语的文化。 英语没有MUI,这意味着
CurrentUICulture
会 无论如何,总是在英语机器上加入美国CurrentCulture
,可以设置为本地化区域设置。
虽然我不确定这些信息来自何处,但您当前的操作系统行为非常确认:您更改了区域设置(CurrentCulture
),但CurrentUICulture
始终保持“国家/地区不可知” “de-DE”(在任何“en- *”区域设置的评论中都像“en-US”)。