我在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"));
我可以更简单地解决这些问题吗?...我的解决方法不是很费力,而且很可能发生错误。
对不起,英语不好,如果您知道此问题,请教我,谢谢。
修改:我删除了第二个问题,因为这只是我的误会。
答案 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。