1,把住Form的keypreview设置成true,即接受按键事件;
2,在textbox1的按键处理函数中写入,
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if(!char.IsDigit(e.KeyChar)) //判断按键输入字符是不是数字
{
e.Handled = true; //表示按键输入已经被处理,这样按键将不会给应用程序,丢掉不想要的按键值,这样的缺点是backspace也会被返回
}
}
类似的函数有
char.IsControl(); //是否是控制字符
char.IsLetter(); //是否是字母
char.IsLetterOrDigit(); //是否是字母和十进制数字
char.IsLower(); //是否是小写
char.IsNumber(); //是否是数字
修改成下面的函数,textbox就可以接受back按键删掉输入的数据
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if(!char.IsDigit(e.KeyChar))
{
if (e.KeyChar != (char)Keys.Back)
{
e.Handled = true;
}
}
}