控制输入范围 0-10 只能是正整数  如何写? 谢谢

解决方案 »

  1.   


    bool IsOneDigit(string s)
    {
       if( s!=null && s.Length == 1 )
       {
          return s[0] >= '0' && s[0] <=9;
       }
       if( s=="10") return true;
       else return false;
    }
      

  2.   

    名字起错了:-)
    bool WithinZeroAndTen()
      

  3.   

    bool IsValid(string s)
    {
        //try{
        int s_int = Convert.ToInt32(s);
        if(s_int > 10 || s_int < 0)
            return false;
        if(s_int.ToString() != s)
            return false;
        return true;}
        //catch{
            //return false;}
    }
      

  4.   


    if(Regex.Match(TextBox1.Text,@"^[1-9]$|^10$").Success)
      //合法
    else
      //不合法
      

  5.   

    将字符串转换为sbyte类型然后写if流程...
    sbyte sbynumber;
    bool bl=sbyte.tryparse(txt.text,out sbynumber);if(bl)
    {
    if(sbynumber>=0 and sbynumber<=10)
    {
    //OK
    }
    }我看到你的题目说是要用正则...于是马上想到正整数有一个符号+(可有可无)!
      

  6.   

    sbyte sbynumber;
    bool bl=sbyte.tryparse(txt.text,out sbynumber);if(bl)
    {
    if(sbynumber>=0 && sbynumber <=10)
    {
    //OK
    }
      

  7.   

    1,2楼不就是个简单的示例吗? 4楼稍改一下也很好啊:
    bool IsValid(string s) 
    {
       int i;
       if( int.TryParse(s, out i) )
       {
          return i >= 0 && i <= 10;
       }
       return false;
    }
      

  8.   

    哦~~~ 是 tryparse 给忘了 谢谢各位