如何判断textBox中输入的为数值,而非字符

解决方案 »

  1.   

    用正则表达式
    或者直接Convert.ToInt32(textbox.text)
    只要没有错误就是数字,有错误就不是数字
      

  2.   

    Regex r = new Regex("^[0-9]*$")
      

  3.   

    static void Main(string[] args)
            {
                System.Text.RegularExpressions.Regex r = new Regex("^[0-9]*$");
                if (r.IsMatch(Console.ReadLine()))
                {
                    Console.WriteLine("是数字");
                }
                else
                {
                    Console.WriteLine("不是数字");
                }
                Console.ReadLine();
            }
      

  4.   

    转的代码
    在textBox1__TextChanged事件里
    Regex r = new Regex("^[0-9]{1,}$");
    if (!r.IsMatch (textBox1.Text))
    {
        Messagebox.Show("请输入数字");
        //txtLineNumber.Text = "";  //如果不想每次都弹出提示对话框,直接清空
    }
      

  5.   

    回 greenberet007(阿宁) 如果是浮点行的 也可以用 r = new Regex("^[0-9]*$")  么 ;
      

  6.   

    if ((e.KeyChar >= '0' && e.KeyChar <= '9') || e.KeyChar == Convert.ToChar(8))
                {
                    e.Handled = false;
                    return;
                }
                else
                {
                    e.Handled = true;
                }
      

  7.   

    回limeng0579() 
    谢谢指点Regex r = new Regex("^[0-9]+\.{0,1}[0-9]{0,2}$");
      

  8.   

    回 greenberet007(阿宁) 谢谢你的答案!!
      

  9.   

    回 greenberet007(阿宁)如果是负数 怎么办??
      

  10.   

    Regex reg = new Regex("^[0-9]+[.]?[0-9]+$");
    Match m = reg.Match(txtPriceFrom.Text.Trim());

    if(m.Success)
    {
    pdblPriceFrom = double.Parse(txtPriceFrom.Text.Trim());

    }
    else
    {
    pdblPriceFrom = 0;
    }
      

  11.   

    我这个只要是decimal的就可以,可以带负数 可以 带小数点