只能輸入整數
方法一
private void tb_KeyPress(object sender, KeyPressEventArgs e) { //如果輸入的不是退格和數字,則屏蔽輸入 if (!(e.KeyChar == '\b' || (e.KeyChar >= '0' && e.KeyChar <= '9'))) { e.Handled = true; } }
e.KeyChar >= ‘0’ && e.KeyChar <= ‘9’ //表示輸入的是數字
e.Handled = true; //true表示已經處理該事件,則屏蔽輸入
方法二
private void tb_KeyPress(object sender, KeyPressEventArgs e) { //如果輸入的不是退格和數字,則屏蔽輸入 if (!(e.KeyChar == 8 || (e.KeyChar >= 48 && e.KeyChar <= 57))) { e.Handled = true; } }
8代表退格,48代表0,57代表9,46代表小數點
方法三
private void tb_KeyPress(object sender, KeyPressEventArgs e) { //如果輸入的不是退格和十進制數字,則屏蔽輸入 if (!(e.KeyChar == '\b' || char.IsDigit(e.KeyChar))) { e.Handled = true; } }
方法四
private void tb_KeyPress(object sender, KeyPressEventArgs e) { //如果輸入的不是退格且不能轉爲整數,則屏蔽輸入 if (!(e.KeyChar == '\b' || int.TryParse(((TextBox)sender).Text + e.KeyChar.ToString(), out int i))) { e.Handled = true; } }
只能輸入小數
方法一
private void tb_KeyPress(object sender, KeyPressEventArgs e) { //當前輸入的是"."且(輸入框已經有“.”或者文本框沒有內容),則屏蔽輸入 if (e.KeyChar == '.' && (((TextBox)sender).Text.IndexOf(".") != -1 || ((TextBox)sender).Text.Length == 0)) { e.Handled = true; } //如果輸入的不是退格、數字和點,則屏蔽輸入 if (!(e.KeyChar == '\b' || (e.KeyChar >= '0' && e.KeyChar <= '9') || e.KeyChar == '.')) { e.Handled = true; } }
方法二
private void tb_KeyPress(object sender, KeyPressEventArgs e) { //如果輸入的不是退格且不能轉爲小數,則屏蔽輸入 if (!(e.KeyChar == '\b' || float.TryParse(((TextBox)sender).Text + e.KeyChar.ToString(), out float f))) { e.Handled = true; } }
只能輸入數字(包含負數)
private void tb_KeyPress(object sender, KeyPressEventArgs e) { //如果輸入的不是負號,退格且不能轉爲小數,則屏蔽輸入 if (!(e.KeyChar == '-'|| e.KeyChar == '\b' || float.TryParse(((TextBox)sender).Text + e.KeyChar.ToString(), out float f))) { e.Handled = true; } }
本文轉載自:https://blog.csdn.net/weixin_38211198/article/details/89214705