我在網上搜索了數小時,但找不到答案。我需要當用戶在TextBox中鍵入或複製任何數字時,數字應該遵循以下規則:小數千分隔符和小數點
- 只應允許一個小數點。
- 千分離器。
- 應刪除尾部零。我的意思是不應顯示小數點後的零。
更新 例如,
123 => 123
1234.00 => 1234
123456.05 => 123,456.05
123456.50 => 123,456.5
我該怎麼做?
我在網上搜索了數小時,但找不到答案。我需要當用戶在TextBox中鍵入或複製任何數字時,數字應該遵循以下規則:小數千分隔符和小數點
更新 例如,
123 => 123
1234.00 => 1234
123456.05 => 123,456.05
123456.50 => 123,456.5
我該怎麼做?
最簡單的方法是嘗試將值解析爲數字。
decimal value;
if(decimal.TryParse(textBox.Text, out value)
{
//value is ok
textBox.Text = string.Format("{0}", value);//If you want some fancier formatting
}
else
{
//Value is not valid
}
Hmya,你爲什麼不假設一個人能夠輸入一個數字。絕大多數世界人口知道如何做到這一點。尊重他們,他們會回報他們的青睞。只有使用驗證事件輸入後才能檢查*。 –
你能清楚*完全*什麼格式?舉一個它應該看起來像什麼的例子。例如,你說'千分隔符',但是哪一個?一個逗號? – sr28
你也可以嘗試一個MaskedTextBox,我認爲它是用來限制用戶輸入的。 https://msdn.microsoft.com/en-us/library/system.windows.forms.maskedtextbox.aspx – GER