为什么textbox没有IP的属性呢?!呵呵

解决方案 »

  1.   

    vc++中有这样的控件,可是c#中要自己写...
      

  2.   

    在文本框的KeyPress事件中写如下代码,防止输入数字和.以外的字符
    if((e.KeyChar<'0' || e.KeyChar >'9')&& e.KeyChar!='.'&& e.KeyChar!=(char)8 )
    {
      e.Handled=true;
    }下面是校验函数。
    bool checkip(string ip)
    {
    int i,j,k;
    if(ip.Length>15 || ip.Length<7) return false;
    for(i=0;i<3;i++)
    {
    j=ip.IndexOf(".",0);
    if(j==-1) return false;
    k=Convert.ToInt32(ip.Substring(0,j));
    if(k<0||k>255) return false;
    if(k==0 && i==0) return false;
    ip=ip.Substring(j+1);
    }
    k=Convert.ToInt32(ip);
    if(k<0||k>255)
    {
    return false;
    }
    else
    {
    return true;
    }
    }我自己测试通过,
    呵呵
    不知道符不符合楼主的需求。
      

  3.   

    用正则表达式
    sing System.Text.RegularExpressions;Regex regex = new Regex(
        @"(?<First>[01]?\d\d?|2[0-4]\d|25[0-5])\.(?<Second>[01]?\d\d?|"
        + @"2[0-4]\d|25[0-5])\.(?<Third>[01]?\d\d?|2[0-4]\d|25[0-5])\.(?"
        + @"<Fourth>[01]?\d\d?|2[0-4]\d|25[0-5])(?x)       #IP Addresses",
        RegexOptions.IgnoreCase
        | RegexOptions.Multiline
        | RegexOptions.IgnorePatternWhitespace
        | RegexOptions.Compiled
        );
      

  4.   

    using System.Text.RegularExpressions;private bool CheckIPAddr(string strAddr)
    {
    //
    //RegEx match pattern for IPAddress
    //
    string strPattern =@"^(\d{1,2}|[01]?\d\d|2[0-4]\d|25[0-5])\."
    + @"(\d{1,2}|[01]?\d\d|2[0-4]\d|25[0-5])\."
    + @"(\d{1,2}|[01]?\d\d|2[0-4]\d|25[0-5])\."
    + @"(\d{1,2}|[01]?\d\d|2[0-4]\d|25[0-5])$";

    //make RegEx with pattern
    Regex regex = new Regex(strPattern);

    //check input ipaddress match with pattern
    if (regex.IsMatch(strAddr))
    {
    return true; }
    else
    {
    return false;

    }
    }
      

  5.   

    using System.Text.RegularExpressions;private bool CheckIPAddr(string strAddr)
    {
    //
    //RegEx match pattern for IPAddress
    //
    string strPattern =@"^(\d{1,2}|[01]?\d\d|2[0-4]\d|25[0-5])\."
    + @"(\d{1,2}|[01]?\d\d|2[0-4]\d|25[0-5])\."
    + @"(\d{1,2}|[01]?\d\d|2[0-4]\d|25[0-5])\."
    + @"(\d{1,2}|[01]?\d\d|2[0-4]\d|25[0-5])$";

    //make RegEx with pattern
    Regex regex = new Regex(strPattern);

    //check input ipaddress match with pattern
    if (regex.IsMatch(strAddr))
    {
    return true; }
    else
    {
    return false;

    }
    }
      

  6.   

    正则表达式
    [\d]{1-4}\.[\d]{1-4}\.[\d]{1-4}\.[\d]{1-4}
      

  7.   

    正则表达式
    [\d]{1-4}\.[\d]{1-4}\.[\d]{1-4}\.[\d]{1-4}
      

  8.   

    参考参考这个吧。
    http://www.codeproject.com/cs/miscctrl/IPAddressTextBox.asp