题
我几乎具有相同的问题,因为在该线程中的人:
所以,我的
double x = 234.4;
string y = x.ToString();
我得到y == "234,4"
;
更糟... Double.Parse("234.4")
抛出异常。
我写的代码,很多之前,我被要求使用期限,而不是逗号,所以我宁愿一些方法来改变我的CultureInfo在全球范围
有没有在一些项目设置,我可以做什么?
我已经试过:
Application.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US");
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
他们那种工作。它为应用程序的大部分工作,但驻留在我的TabControl的标签仍然要使用我的电脑的所有控件本地化的CultureInfo
,关于如何解决这个任何想法?
解决方案 2
由于林Sabaus评论我找到了解决方案,这是放置
Application.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US");
在main()之前,我建立了我的形式。
现在我不会改变我所有的ToString()和Double.Parse():-) Yey!
其他提示
您可以尝试使用
double.Parse("...", CultureInfo.InvariantCulture)
和
x.ToString(CultureInfo.InvariantCulture)
在该程序的,你是正你需要有小数期间代替逗号或其它区域设置依赖小数点分隔部分。
希望它能帮助。
不隶属于 StackOverflow