2016-08-24 90 views
-2

我在Windows應用程序中有一個文本框,用戶只能輸入3位數的長度,但不能只輸入0 ..但應該能夠輸入10 .. 。用戶應該能夠執行退格刪除。 我有下面的代碼制約0,即使進入10限制用戶輸入0作爲第一個字符,但允許在文本框中輸入10

private void radtxt_KeyPress(object sender, KeyPressEventArgs e) 
{ 
    if ((!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar)) 
       || (e.KeyChar == '.' || (e.KeyChar == '0')) 
    { 
     e.Handled = true; 
    } 
} 
+1

您應該只檢查radtxt的第一個字符。但是複製/粘貼呢? – Steve

+0

請勿使用KeyPress事件進行輸入驗證。用戶可以通過上下文菜單粘貼值「0」。使用MaskedTextBox,不要重新發明輪子。另外,請在提問前閱讀[問]並嘗試搜索。 – CodeCaster

+0

我會嘗試MaskedTextBox –

回答

0

嘗試查看每次文本框的值,當用戶改變它。然後,如果值是等於零,則可以根據需要更改它。另一方面,我建議你閱讀有關驗證的內容。

相關問題