关于Xamarin Os系统语言和格式

时间:2018-07-23 10:45:10

标签: xamarin locale

我在xamarin项目中发现了一个问题。

虽然我设置了OS语言,但无法成功解析德语(Deutsch),所有int.parse,decimal.parse和其他..。

例如。我尝试过了。

string sTest = 1234.567;
decimal dResult = Decimal.parse(sTest);

dResult为“ 123.4,567”

我找到了这个解决方案

Decimal.parse(sTest, new CultureInfo("en-US"));

我可以更简单地解决这些问题吗?...我的解决方法不是很费力,而且很可能发生错误。

对不起,英语不好,如果您知道此问题,请教我,谢谢。

修改:我删除了第二个问题,因为这只是我的误会。

2 个答案:

答案 0 :(得分:3)

假设您正在使用Xamarin.Forms,如果可以,则可以分配一种全局区域性:

AppResources.Culture =  new CultureInfo("en-US");

这假定您的应用程序的其余部分为英文和/或您未使用RESX文件进行本地化。

回复:Localization

否则,您将需要创建IValueConverter转换器并传递您用来显示内容的区域性:

答案 1 :(得分:0)

我在应用程序初始化处理中添加了这个Low。

System.Globalization.CultureInfo.DefaultThreadCurrentCulture =新的System.Globalization.CultureInfo(“ zh-CN”);

过去,不必将CultureInfo设置为所有.parse和.toString。