本文共 1452 字,大约阅读时间需要 4 分钟。
在键按事件中,可以通过验证每个按键字符是否为所允许范围内的字母、数字或退格键来实现输入限制。
private void textBox_KeyPress(object sender, KeyPressEventArgs e) { if ((e.KeyChar >= 'a' && e.KeyChar <= 'z') || (e.KeyChar >= 'A' && e.KeyChar <= 'Z') || (e.KeyChar >= '0' && e.KeyChar <= '9') || (e.KeyChar == 8)) { e.Handled = false; } else { e.Handled = true; } }
为了确保输入仅限于数字字符,可以使用键按事件来执行字符验证。需要注意小数点的处理逻辑,以防止小数点出现在不合适的位置。
private void numberInput_KeyPress(object sender, KeyPressEventArgs e) { if ((int)e.KeyChar < 48 || (int)e.KeyChar > 57 || (int)e.KeyChar == 8 || (int)e.KeyChar == 46) { e.Handled = true; } else { // 小数点处理 if ((int)e.KeyChar == 46) { if (txtPassWord.Text.Length == 0) e.Handled = true; else { bool b1 = float.TryParse(txtPassWord.Text, out float oldf); bool b2 = float.TryParse(txtPassWord.Text + e.KeyChar.ToString(), out float f); if (!b2) { e.Handled = b1 ? true : false; } } } } }
在键按事件中,可以使用正则表达式来验证输入是否为汉字字符。
private void txtUserName_KeyPress(object sender, KeyPressEventArgs e) { // 验证仅输入汉字 Regex regex = new Regex("[\u4e00-\u9fa5]"); if (!regex.IsMatch(e.KeyChar.ToString())) { e.Handled = true; } }
转载地址:http://ppkxz.baihongyu.com/