C#的TextBox控件输入测试只允许输入数字的测试:

 

 

代码如下: (VS2005)

       public TextBoxInputCheck(object sender, KeyPressEventArgs e,INPUTTYPE type)
       {
            if(type == INPUTTYPE.INT)
            {
                string pattern = @"^[0-9]";
                Regex reg = new Regex(pattern);
                if ((!reg.Match(e.KeyChar.ToString()).Success) && (e.KeyChar.ToString() != ""))
                {
                    e.Handled = true;
                }
            }
            else if(type == INPUTTYPE.FLT)
            {
                string pattern = @"^[0-9]|.$";
                Regex reg = new Regex(pattern);
                if ((!reg.Match(e.KeyChar.ToString()).Success) && (e.KeyChar.ToString() != ""))
                {
                    e.Handled = true;
                }
                else if (e.KeyChar.ToString() == "." && (sender as TextBox).Text.IndexOf('.') > 0)
                {
                    e.Handled = true;
                }
            }    
        }

原文地址:https://www.cnblogs.com/twttafku/p/1131200.html