自己改良的IP控件,直接调用就可以,vs2010编写的
备注说明:1.vs新建windos窗体控件库,设计控件样式,编写空间代码。生成。在bin文件夹底下找到.dll文件拷到要用的项目中,
然后在项目中工具箱内右键点击选择项,找到.dll添加。
2.在工具箱内可以找到自己设计的控件,进行使用。(齿轮形状)
public IPAddress() { InitializeComponent(); } int inputIndex = 3; #region [属性] /// <summary> /// IP类别:1为IP地址;2为子网掩码;3为网关 /// </summary> private int _iIPType = 1; private string _IPAddressValue = ""; [Description("IP地址类别:1为IP地址;2为子网掩码;3为网关;DNS设为1"), Category("IP地址类别")] public int iIPType { set { _iIPType = value; } get { return _iIPType; } } [Description("IP地址"), Category("文本")] [Browsable(true)] public string IPAddressValue { set { _IPAddressValue = value; string[] ipMessage = _IPAddressValue.Split('.'); ttxIp1.Text = ipMessage[0]; ttxIp2.Text = ipMessage[1]; ttxIp3.Text = ipMessage[2]; ttxIp4.Text = ipMessage[3]; } get { if (ttxIp1.Text != "0") { ttxIp1.Text = ttxIp1.Text.TrimStart('0');//不出错,还是显示之前输入的ttxIp1.text的内容 } else { ttxIp1.Text = "0"; } if (ttxIp2.Text != "0") { ttxIp2.Text = ttxIp2.Text.TrimStart('0');//不出错,还是显示之前输入的ttxIp1.text的内容 } else { ttxIp2.Text = "0"; } if (ttxIp3.Text != "0") { ttxIp3.Text = ttxIp3.Text.TrimStart('0');//不出错,还是显示之前输入的ttxIp1.text的内容 } else { ttxIp3.Text = "0"; } if (ttxIp4.Text != "0") { ttxIp4.Text = ttxIp4.Text.TrimStart('0');//不出错,还是显示之前输入的ttxIp1.text的内容 } else { ttxIp4.Text = "0"; } _IPAddressValue = ttxIp1.Text "." ttxIp2.Text "." ttxIp3.Text "." ttxIp4.Text; return _IPAddressValue; } } #endregion #region [方法] #region [TextChange方法] /// <summary> /// 验证IP输入 /// </summary> /// <param name="strIPInput">录入的IP地址信息</param> /// <param name="iIpStart">用于判断的起始地址</param> /// <param name="iIpEnd">用于判断的结束地址</param> /// <returns></returns> private string ValidateIPTextChange(string strIPInput, int iIpStart, int iIpEnd) { string strReturn = "0"; int iIPS = 0; try { iIPS = Convert.ToInt32(strIPInput); if (iIPS < iIpStart || iIPS > iIpEnd) { MessageBox.Show(iIPS "不是一个有效项目。请指定一个介于" iIpStart "到" iIpEnd "之间的数值!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); if (iIPS < iIpStart) { strReturn = iIpStart.ToString(); } if (iIPS > iIpEnd) { strReturn = iIpEnd.ToString(); } } } catch { MessageBox.Show("请输入正整数!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); strReturn = iIpStart.ToString(); } return strReturn; }
评论