我今天刚刚发现WPF将忽略CultureInfo.CurrentCulture并始终使用en-US。我也找到了一个很棒的答案here。一切工作正常,直到其中一个用户自定义区域设置来更改货币符号(在菲律宾,您可以写Php和P,大多数人更喜欢P,默认设置是Php)。该应用程序似乎没有提到这一点。有没有办法解决这个问题?
答案 0 :(得分:2)
我最近不得不检查我的C#WPF应用程序的当前国家/地区设置。 我使用的是CurrentCulture而不是CurrentUICulture(它也为我选择了EN-US)。
另外,我不确定这会有所帮助 - 但我发现我在错误的地方测试了这个功能。
要更改应用的国家/地区以进行测试,请转到: “控制面板 - >时钟,语言和区域”选择“区域和语言”按钮,将弹出一个窗口,转到格式选项卡,在格式列表框中更改国家/地区。
一旦我这样做,CurrentCulture就可以了。
答案 1 :(得分:0)
经过一周对两个人的研究,我认为目前没有办法使用全球化课程。
CurrentUICulture和其他相关类包含所选语言的默认格式/设置,但不包含自定义设置。
执行此操作的一种方法是直接从注册表项HKCU \ Control Panel \ International读取值。
答案 2 :(得分:0)
是的,有一种方法可以让WPF使用自定义区域设置,但您需要强制所有绑定都使用CultureInfo.CurrentCulture
。有关示例,请参阅this post。