Maison > Article > développement back-end > .NET复合控件之可输入的下拉控件
使用系统;
使用System.Collections.Generic;
使用System.ComponentModel;
使用System.Text;
使用的System.Web;
使用System.Web.UI程序;
使用System.Web.UI.WebControls;
System.Collections中使用;
命名空间QC_Control
{
/// <摘要>
///自定义可输入下拉框类
/// 摘要>
[ToolboxData(“<{0}:CustomInputDropdownControl RUNAT =服务器> {0}:CustomInputDropdownControl>”) ]
公共类CustomInputDropdownControl:文本框
{
私人DropDownList的ddlListItem =新的DropDownList(); //下拉框
的私人文本框TxtBox =新的TextBox();
私人Hashtable的_values =新的Hashtable(); //用于绑定下拉框框的值
/// <摘要>
///键值引用变量设置/获取封装方法
/// 摘要>
公开Hashtable的项目
{
获得{
如果(的ViewState [“值”] = = NULL)
{
的ViewState [“值”] =新的Hashtable();
}
其他{}
Hashtable的S =(哈希表)的ViewState [“值”];
返回S;
}
设置{的ViewState [“值”] =值; }
}
/// <摘要>
///默认构造函数
///初始化的DropDownList和Hashtable实例变量
/// 摘要>
公开CustomInputDropdownControl()
{
// this._values =新的Hashtable();
// this.ddlListItem =新的DropDownList();
}
/// <摘要>
///重写控件类渲染方法体
/// 摘要>
/// param>的
保护覆盖无效渲染(HtmlTextWriter的输出)
{ddlListItem。 ID =“DDL”+ base.ID;
TxtBox.ID =“TXT」+ base.ID;
//框架的开始
output.Write(“<表CELLSPACING ='0'的cellpadding =”0“边界='0'>