2015-04-23 114 views
0

我有一個從計算中獲取值的文本框。我試圖讓它顯示逗號當值超過999.99我試過Convert.ToDecimal和Convert.ToString,但它似乎並沒有工作。這是填充字段的代碼。任何幫助將不勝感激。在文本框中顯示逗號VB.net

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

IskMade1字段正確顯示小數,但不會將任何逗號添加到數字。

+0

可能的重複[格式化數字以顯示逗號當大於一千](http://stackoverflow.com/questions/19999560/format-a-number-to-display-a-comma-when-thousand-thousand) – OneFineDay

回答

3

只要你有在其中存儲的十進制值,你可以按以下格式設置文本框的文本一些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

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

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

相關問題