在WinCE 5 / .NET CF 2中以编程方式更改UI文化

时间:2010-07-19 19:35:51

标签: c# .net compact-framework

在标准.NET框架应用程序(不是CF)中,我可以使用以下命令更改用户UI文化:

System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("es-AR");
System.Threading.Thread.CurrentThread.CurrentUICulture = System.Threading.Thread.CurrentThread.CurrentCulture;

但.NET CF 2不支持CurrentThread的CurrentUICulture。

到目前为止,我发现here可能通过设置

来更改UI文化
[HKEY_LOCAL_MACHINE\nls\overrides]\LCID
[HKEY_CURRENT_USER\MUI]\CurLang

但需要在更改后重新启动设备。 还有其他办法吗?

TIA, 巴勃罗

1 个答案:

答案 0 :(得分:1)

是的,有。而不是黑客入侵注册表,使用记录的SetUserDefaultUILanguage()API函数。从该API的备注部分:

在重置设备之前,新的LANGID不会生效。

无法解决这个问题。不应该是一个问题,用户不会经常更改他们的母语。