在文本框中显示逗号VB.net

问题描述:

我有一个从计算中获取值的文本框。我试图让它显示逗号当值超过999.99我试过Convert.ToDecimal和Convert.ToString,但它似乎并没有工作。这是填充字段的代码。任何帮助将不胜感激。在文本框中显示逗号VB.net

IskMade1.Text = Convert.ToDecimal(IPU1.Text) * Convert.ToDecimal(Units1.Text) 

IskMade1字段正确显示小数,但不会将任何逗号添加到数字。

+0

可能的重复[格式化数字以显示逗号当大于一千](http://*.com/questions/19999560/format-a-number-to-display-a-comma-when-thousand-thousand) – OneFineDay

只要你有在其中存储的十进制值,你可以按以下格式设置文本框的文本一些MyDecimalVariable变量:

Dim MyDecimalVariable As Decimal = 1234.56 
IskMade1.Text = MyDecimalVariable.ToString("#,##0.00") 

或者你可以有:

Dim MyDecimalVariable As Decimal = 1234.56 
IskMade1.Text = MyDecimalVariable.ToString("N", CultureInfo.InvariantCulture) 

在这种情况下,你会需要导入System.Globalization命名空间。

+0

它的工作!非常感谢!!! –

如果IPU1和Units1是文本框,您应该在转换之前检查Text属性是否可以转换为数字。 Decimal.TryParse可以为你做到这一点。然后使用ToString(“N”)将逗号分隔符转换为字符串,如果要显示两位小数,则转换为ToString(“N2”)。

Dim ipuNum, units as Decimal 
If Decimal.TryParse(IPU1.Text, ipuNum) AndAlso Decimal.TryParse(Units1.Text) Then 
    IskMade1.Text = (ipuNum * units).ToString("N") 
Else 
    'Error processing goes here 
End If 

你做错误处理是由你决定的。您可以使用MessageBox.Show来显示错误消息和(如果这是一个按钮单击处理程序)Exit Sub