5

在我的 WPF 应用程序中,CurrentUICulture 没有被 Windows 正确接管或错误地存储在 Windows 中。

Windows 中的区域和语言设置在我找到的所有“Deutsch (Schweiz)”的地方。应用程序中的 CurrentUICulture 显示“Deutsch (Deutschland)”而不是“Deutsch (Schweiz)”。我已经在多台计算机上(使用域用户和本地用户)对其进行了测试。

问题可能出在哪里?这个设置在 Windows 中有一个很难找到的地方吗?

重要提示:我知道我可以在应用程序中设置文化。我不需要像这样的答案 Thread.CurrentThread.CurrentUICulture = new CultureInfo("de-ch")

我只想了解该机制是如何工作的以及它从哪里获取信息。

以下是我的 Windows 设置中的一些屏幕截图:

欢迎屏幕和新用户帐户设置

地区和语言

高级设置

地区

谢谢,阿德里安

4

1 回答 1

2

我想这是微软的“设计”。

请阅读这个问题。对此有相当高的评价:

请记住,Microsoft 不会将美国英语和(英国)英语或其他英语的 UI 文化分开。没有针对英语的 MUI,这意味着在CurrentUICulture英语机器上将始终是 en-US,而不管 CurrentCulture可以设置为本地化区域设置。

虽然我不确定此信息来自何处,但您当前的操作系统行为非常确认:您更改了区域设置 ( CurrentCulture),但CurrentUICulture始终保持“与国家无关”为“de-DE”(如“en-US”任何“en-*”区域设置的注释)。

于 2017-10-25T13:43:51.543 回答