winform 文本框 只能输入数字与指定字符
1. 可以设置文本框的keyPress事件,一般情况下不使用keyUp与keyDown事件,这两个事件对所有的字符键入都会被触发
2. 在 KeyPress 事件里对键入的字符进行判断,常用的有 Char .IsNumber(e.KeyChar) 检查是否为数字等,不符合条件时
设置e.Handled = true 禁止输入
void txtThou_KeyPress(object sender, KeyPressEventArgs e)
{
//同号码,回车或空格跳转到组数输入框
if (e.KeyChar == (char )Keys.Enter || e.KeyChar == ( char)Keys .Space)
{
if (!CheckInput()) return ;
isNo = false;
txtPrice.Focus();
return;
}
//只能输入数字和回车键,对于不符合条件的输入 使用e.handled=true 禁止输入
if (!Char .IsNumber(e.KeyChar)&&e.KeyChar != ( char) Keys .Back) e.Handled = true;
//判断是否为数字,为数字的话检查是否有重复数字,禁止重复输入
if (Char .IsNumber(e.KeyChar))
{
var no = ((TextBox ) sender).Text;
if(no.Contains(e.KeyChar))
e.Handled = true;
}
}