/* * Discuz!NT Version: 1.0 * Created on 2007-3-30 * * Web: [url]http://www.discuznt.com[/url] * Copyright (C) 2001 - 2007 Comsenz Technology Inc., All Rights Reserved. * This is NOT a freeware, use is subject to license terms. * */
using System; using System.Collections; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.ComponentModel;
namespace wwwwwww { /// <summary> /// TextBox 控件 /// </summary> [DefaultProperty("Text"), ToolboxData("<{0}:TextBox runat=server></{0}:TextBox>")] public class TextBox : System.Web.UI.WebControls.WebControl, IPostBackDataHandler { protected System.Web.UI.WebControls.TextBox tb = new System.Web.UI.WebControls.TextBox(); protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1 = new RequiredFieldValidator(); protected System.Web.UI.WebControls.RegularExpressionValidator RegularExpressionValidator1 = new RegularExpressionValidator(); protected System.Web.UI.WebControls.RangeValidator rangevalidator = new System.Web.UI.WebControls.RangeValidator();
public TextBox() : base() { tb.Attributes.Add("onfocus", "this.className='colorfocus';"); tb.Attributes.Add("onblur", "this.className='colorblur';");
tb.CssClass = "colorblur"; }
public void AddAttributes(string key, string valuestr) { tb.Attributes.Add(key, valuestr); }
//在属性RequiredFieldType后进行调用 public void SetValiateControls() { this.Controls.Add(tb);
if ((RequiredFieldType != null) && (RequiredFieldType != "") && (RequiredFieldType != "暂无校验")) { RegularExpressionValidator1.Display = System.Web.UI.WebControls.ValidatorDisplay.Dynamic; RegularExpressionValidator1.ControlToValidate = tb.ID; RegularExpressionValidator1.ForeColor = System.Drawing.Color.Black;
switch (RequiredFieldType) { case "数据校验": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : "^[-]?\\d+[.]?\\d*$"; RegularExpressionValidator1.ErrorMessage = " 数字的格式不正确"; break; } case "电子邮箱": { //RegularExpressionValidator1.ValidationExpression="^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$"; RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : (@"^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"); RegularExpressionValidator1.ErrorMessage = " 邮箱的格式不正确"; break; } case "移动手机": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : "\\d{11}"; RegularExpressionValidator1.ErrorMessage = " 手机的位数应为11位!"; break; } case "家用电话": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : "((\\(\\d{3}\\) ?)|(\\d{3}-))?\\d{3}-\\d{4}|((\\(\\d{3}\\) ?)|(\\d{4}-))?\\d{4}-\\d{4}"; RegularExpressionValidator1.ErrorMessage = " 请依 (XXX)XXX-XXXX 格式或 (XXX)XXXX-XXXX 输入电话号码!"; break; } case "身份证号码": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : "^\\d{15}$|^\\d{18}$"; RegularExpressionValidator1.ErrorMessage = " 请依15或18位数据的身份证号!"; break; } case "网页地址": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : @"^(http|https)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|localhost|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{1,10}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\?\'\\\+&%\$#\=~_\-]+))*$"; RegularExpressionValidator1.ErrorMessage = " 请输入正确的网址"; break;
} case "日期": { //RegularExpressionValidator1.ValidationExpression="\\d{4}-\\d{1,2}-\\d{1,2}"; RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : @"^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$"; RegularExpressionValidator1.ErrorMessage = " 请输入正确的日期,如:2006-1-1"; break; } case "日期时间": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : @"^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$"; RegularExpressionValidator1.ErrorMessage = " 请输入正确的日期,如: 2006-1-1 23:59:59"; break; } case "金额": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : "^([0-9]|[0-9].[0-9]{0-2}|[1-9][0-9]*.[0-9]{0,2})$"; RegularExpressionValidator1.ErrorMessage = " 请输入正确的金额"; break; } case "IP地址": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : @"^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$"; RegularExpressionValidator1.ErrorMessage = " 请输入正确的IP地址"; break; } case "IP地址带端口": { RegularExpressionValidator1.ValidationExpression = (this.ValidationExpression != null) ? this.ValidationExpression : @"^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9]):\d{1,5}?$"; RegularExpressionValidator1.ErrorMessage = " 请输入正确的带端口的IP地址"; break; } } this.Controls.Add(RegularExpressionValidator1); }
switch (CanBeNull) { case "可为空": { break; } case "必填": { RequiredFieldValidator1.Display = System.Web.UI.WebControls.ValidatorDisplay.Dynamic; RequiredFieldValidator1.ControlToValidate = tb.ID; RequiredFieldValidator1.ForeColor = System.Drawing.Color.Black; RequiredFieldValidator1.ErrorMessage = "请务必输入内容!"; this.Controls.Add(RequiredFieldValidator1); break; } default: { break; } }
this.BorderStyle = BorderStyle.Dotted; this.BorderWidth = 1;
}
|