Asp.net 3.5控件和组件开发技术系列—从零开始开发服务器控件(下)
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-05-20
] [Description("验证表达式")] public string ValidateExpression { get { this.EnsureChildControls(); return this.rev.ValidationExpression; } set { this.EnsureChildControls(); this.rev.ValidationExpression = value; } } [Category("LabelTextBox")] [Description("错误提示")] public string ErrorMessage { get { this.EnsureChildControls(); return this.rev.ErrorMessage; } set { this.EnsureChildControls(); this.rev.ErrorMessage = value; } } public Field() { } /// <summary> /// 建立子控件实例, 并设置默认值 /// </summary> protected override void CreateChildControls() { this.Controls.Clear(); lb = new Label(); this.lb.ID = "lbTitle"; this.lb.Width = Unit.Pixel(50); this.Controls.Add(lb); tb = new TextBox(); this.tb.ID = "tbValue"; this.tb.Width = Unit.Pixel(100); this.Controls.Add(tb); rev = new RegularExpressionValidator(); this.rev.ID = "revValidator"; this.rev.ControlToValidate = this.tb.ID; this.rev.ErrorMessage = "[输入格式不正确!]"; this.rev.Display = ValidatorDisplay.Static; this.Controls.Add(this.rev); this.ChildControlsCreated = true; } protected override void RecreateChildControls() { if (this.ChildControlsCreated == false) { base.RecreateChildControls(); } } protected override void Render(HtmlTextWriter writer) { writer.AddAttribute(HtmlTextWriterAttribute.Cellpadding, "0"); writer.AddAttribute(HtmlTextWriterAttribute.Cellspacing, "0"); writer.AddAttribute(HtmlTextWriterAttribute.Border, "0"); writer.RenderBeginTag(HtmlTextWriterTag.Table); writer.RenderBeginTag(HtmlTextWriterTag.Tr); writer.RenderBeginTag(HtmlTextWriterTag.Td); this.lb.RenderControl(writer); writer.RenderEndTag(); writer.RenderBeginTag(HtmlTextWriterTag.Td); this.tb.RenderControl(writer); writer.RenderEndTag(); if (String.IsNullOrEmpty(this.ValidateExpression) == false && this. DesignMode == false) { writer.RenderBeginTag(HtmlTextWriterTag.Td); this.rev.RenderControl(writer); writer.RenderEndTag(); } writer.RenderEndTag(); writer.RenderEndTag(); } } 编译控件,在测试页面中放置一个Field控件,并为其设置几个属性,设置好后如下所示:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: 领先技术 - 再探异步ASP.NET页下一篇: 如何开发HTML编辑器
关于Asp.net 3.5控件和组件开发技术系列—从零开始开发服务器控件(下)的所有评论