可以通过用户控件把它们组合在一起使用。
也可以声明自定义控件,声明两个成员,分别是TextBox和ListBox,在构造函数里,this.Controls.Add(...);就可以。
通常在asp.net使用的是自定义控件来解决,重用度高。
你建立个用户控件,在用户控件里放你需要复合的控件,然后在用户控件里暴露出需要进行操作的数据,如textbox的Text属性等。
或者可以选择自己根据需求编写一个web控件,不过比较复杂。
你需要重写 CreateChildControls() 方法:
/// <summary>
/// 创建子控件
/// </summary>
protected override void CreateChildControls()
{
base.CreateChildControls();
//在这里添加你要加的控件
////添加空值验证控件
if (!DesignMode)
{
if (RequiredValidatedEmpty)
{
if (this.RequiredValidatedEmpty)
{
this.fieldValiator = this.CreateFieldValidator();
}
this.Controls.Add(this.fieldValiator);
}
////添加表达式验证控件
if (this.RequiredValidatedExpression)
{
this.expressionValidator = this.CreateExpressionValidator();
this.Controls.Add(this.expressionValidator);
}
}
ChildControlsCreated = true;
}
我是在 TextBox 上面加了验证控件