我有一個文本框獲取十進制值,說10500.00
問題是,我有它的方式,當你輸入一個值,然後輸入小數,它不會讓你退格或清除文本框輸入一個新的值..它只是卡住..我試圖將值設回0.00,但我認爲我把它放在錯誤的地方,因爲它不會改變它。這裏是我的代碼帶有十進制輸入改進的文本框
private void txtTransferAmount_KeyPress(object sender, KeyPressEventArgs e)
{
bool matchString = Regex.IsMatch(textBoxTransfer.Text.ToString(), @"\.\d\d");
if (matchString)
{
e.Handled = true;
}
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && e.KeyChar != '.')
{
e.Handled = true;
}
// only allow one decimal point
if (e.KeyChar == '.' && (sender as TextBox).Text.IndexOf('.') > -1)
{
e.Handled = true;
}
}
你的建議是什麼類型的變化,這樣我或許可以退格或清除texbox一個輸入一個新值?