bool validator(string s)
{
decimal dec;
try { dec = decimal.patse(s); }
catch { return false; }
return dec >= -1 && dec <= 99999999999999
}

解决方案 »

  1.   

    如果是web下,可以用RangeValidator,.net的例子:
    <%@ Page Language="C#" AutoEventWireup="True" %><html><head>   <script runat="server">      void ButtonClick(Object sender, EventArgs e)
          {         if (Page.IsValid)
             {
                Label1.Text="Page is valid.";
             }
             else
             {
                Label1.Text="Page is not valid!!";
             }      }   </script></head><body>   <form runat="server">      <h3>RangeValidator Example</h3>      Enter a number from 1 to 10:      <br>      <asp:TextBox id="TextBox1"
               runat="server"/>      <br>      <asp:RangeValidator id="Range1"
               ControlToValidate="TextBox1"
               MinimumValue="1"
               MaximumValue="10"
               Type="Integer"
               EnableClientScript="false"
               Text="The value must be from 1 to 10!"
               runat="server"/>      <br><br>      <asp:Label id="Label1"
               runat="server"/>      <br><br>      <asp:Button id="Button1"
               Text="Submit"
               OnClick="ButtonClick"
               runat="server"/>
                   </form></body>
    </html>
      

  2.   

    对于web,用数据验证器,你可以去查查这几种的用法:RangeValidator,RegularExpressionValidator,CustomValidator.
    对于form,用正则表达式
      

  3.   

    可以考虑不用textbox,用数字控件.(唯一的缺点是那两个小箭头不能去掉)