在下面的代碼中,我試圖只獲取十進制值。但是文本字段輸入來自不同的字符串。需要驗證對數字和退格,如果我在文本框中輸入1刪除鍵KeyDown事件與用戶輸入驗證
if ((e.KeyValue >= 48 && e.KeyValue <= 57) || (e.KeyCode >= Keys.NumPad0 && e.KeyCode <= Keys.NumPad9) && (textBox1.Text.Length < textBox1.MaxLength))
{
if (e.KeyCode != Keys.Delete && e.KeyCode != Keys.Back)
{
if (e.KeyValue >= 48 && e.KeyValue <= 57)
{
enteredNumber = e.KeyData.ToString();
}
else
{
enteredNumber = e.KeyData.ToString().Substring(0, 1);
}
}
textBox1.Text = textBox1.Text + enteredNumber;
}
,IAM獲得在文本框中輸入字符的ASCII值149,因爲其附加49 - 在文本框中的1 ASCII值。你能建議如何解決這個問題嗎?
你爲什麼不使用e.KeyChar? – User2012384
你期待的結果是什麼?輸入兩位數後輸入 – Plue
,需要用小數點分隔符更新。 KeyChar不可用。 – curiousDev