textbox控件只输入数字

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;
                }
            }   
        }

阅读更多
想对作者说点什么? 我来说一句
相关热词

没有更多推荐了,返回首页