如何让文本框里只能输数字,其他的什么都不能输,空格和标点都不行呢?

解决方案 »

  1.   

    考虑键盘、快捷键和上下文菜单,参考:定制C# TextBox中只允许输入数字的解决方法
      

  2.   

    keypress事件:if (!(e.KeyChar <= '9' && e.KeyChar >= '0') && e.KeyChar != '\r' && e.KeyChar != '\b')
                    {
                        e.Handled = true;   //处理KeyPress事件
                    }
      

  3.   

      if ((e.KeyChar >= 48) && (e.KeyChar <= 57))
                    e.Handled = false;
                else
                    e.Handled = true;
      

  4.   

    public static void TypeNumberOnly(object sender, KeyPressEventArgs e)
            {
                if (e.KeyChar == 0x20) e.KeyChar = (char)0;  //禁止空格键
                if ((e.KeyChar == 0x2D) && (((TextBox)sender).Text.Length == 0)) return;   //处理负数
                if (e.KeyChar > 0x20)
                {
                    try
                    {
                        double.Parse(((TextBox)sender).Text + e.KeyChar.ToString());
                    }
                    catch
                    {
                        e.KeyChar = (char)0;   //处理非法字符
                    }
                }
            }
    小数点处理不知道