I.直接添加事件
方法:
在页面的Page_Load事件里写如下代码(UcEquipmentQuery1是用户控件):
DropDownList ddl=(DropDownList)UcEquipmentQuery1.FindControl("DropDownList1");
ddl.SelectedIndexChanged+=new EventHandler(ddl_SelectedIndexChanged);
ddl.SelectedIndexChanged+=new EventHandler(ddl_SelectedIndexChanged);
在页面写事件处理函数:
private void ddl_SelectedIndexChanged(object sender, EventArgs e)
{
{
//处理
}
II.可以用Event Bubble来实现
方法:
a.在用户控件的DropDownList的事件里调用RaiseBubbleEvent方法,如:
private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)
{
this.RaiseBubbleEvent(sender,e);
}
{
this.RaiseBubbleEvent(sender,e);
}
b.在页面代码中重载OnBubbleEvent方法,如:
protected override bool OnBubbleEvent(object source,System.EventArgs arg)
{
if(source is DropDownList)
{
{
if(source is DropDownList)
{
//处理
return true;
}
return base.OnBubbleEvent(source,arg);
}
return true;
}
return base.OnBubbleEvent(source,arg);
}
注:此种方法不适用于一个页面里有多个用户控件的情况。