使用千位分隔符将十进制分析为字符串的简便方法。
例如:
我从数据库中获取小数点为100000000.00
,字段类型为decimal(18,2)
,我的表单中有一个名为TextBox
的{{1}}。
然后
我希望将"payTxt"
解析为100000000.00
以填充100.000.000,00
。
我不知道为什么我每次都设置"payTxt"
它变为"payTxt.Text = "100000000.00" "
答案 0 :(得分:0)
payTxt.Text = YourVariable.ToString("N2");
答案 1 :(得分:0)
最好使用NumericUpDown
控件,ThousandSeparator
设置为true,DecimalPlaces
设置为2,Maximum
设置为您需要的值:
这是设置值的结果:1234567.89
这样:
你应该知道的另一件事是String.Format()和ToString()方法基于Culture工作,例如:
//Shows value based on your Thread.CurrentThread.CurrentCulture
MessageBox.Show(String.Format("{0:N2}", 123456.78));
//Shows 123,456.78
MessageBox.Show(String.Format(CultureInfo.GetCultureInfo("en"), "{0:N2}", 123456.78));
//Shows 123,456/78
MessageBox.Show(String.Format(CultureInfo.GetCultureInfo("fa"), "{0:N2}", 123456.78));
//Shows result based on your Thread.CurrentThread.CurrentCulture
MessageBox.Show((123456.78).ToString("N2"));
//Shows 123,456.78
MessageBox.Show((123456.78).ToString("N2", CultureInfo.GetCultureInfo("en")));
//Shows 123,456/78
MessageBox.Show((123456.78).ToString("N2", CultureInfo.GetCultureInfo("fa")));
答案 2 :(得分:0)
获得100.000.000,00尝试以下内容:
Decimal dec = 100000000.00M;
CultureInfo ci = new CultureInfo("el-GR");
payTxt.Text = dec.ToString("0,0.00", ci);
了解更多信息请查看以下链接: Custom Numeric Format Strings
“el-GR”实际上是希腊文化信息,大多数其他文化将显示千位数分隔符的逗号。