本控件主要解决了自定义复合控件中,客户端验证脚本。 using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.ComponentModel;
namespace Only.CompositionControls { /// <summary> /// Create By liyi。 /// Date:2004-10-10 /// </summary> [DefaultProperty("Value"),ValidationPropertyAttribute("Value"),ToolboxData("<{0}:LiteralTextBox runat=server></{0}:LiteralTextBox>")] public class LiteralTextBox:Control,INamingContainer { //以下脚本用于从文本框输入页码 [DefaultValue("Text:"),Category("自定义")] public string Text { get { this.EnsureChildControls(); return ((LiteralControl)Controls[0]).Text; } set { this.EnsureChildControls(); ((LiteralControl)Controls[0]).Text = value; } } [DefaultValue("Value"),Category("自定义")] public string Value { get { this.EnsureChildControls(); return ((TextBox)Controls[1]).Text; } set { this.EnsureChildControls(); ((TextBox)Controls[1]).Text = value; } } [DefaultValue(""),Category("自定义")] public Unit Width { get { this.EnsureChildControls(); return ((TextBox)Controls[1]).Width; } set { this.EnsureChildControls(); ((TextBox)Controls[1]).Width = value; } } [DefaultValue(TextBoxMode.SingleLine),Category("自定义")] public TextBoxMode TextMode { get { this.EnsureChildControls(); return ((TextBox)Controls[1]).TextMode; } set { this.EnsureChildControls(); ((TextBox)Controls[1]).TextMode = value; } } [DefaultValue(BorderStyle.NotSet),Category("自定义")] public BorderStyle BorderStyle { get { this.EnsureChildControls(); return ((TextBox)Controls[1]).BorderStyle; } set { this.EnsureChildControls(); ((TextBox)Controls[1]).BorderStyle = value; } } [DefaultValue(""),Category("自定义")] public Unit BorderWidth { get { this.EnsureChildControls(); return ((TextBox)Controls[1]).BorderWidth; } set { this.EnsureChildControls(); ((TextBox)Controls[1]).BorderWidth = value; } } protected override void CreateChildControls() { this.Controls.Add(new LiteralControl("Text:"));
TextBox box = new TextBox(); box.Text = "Value"; box.ID = "Only"; this.Controls.Add(box); } } }

|