在父页面处理用户控件的事件
2004-10-15 11:45
441 查看
I.直接添加事件
方法:
在页面的Page_Load事件里写如下代码(UcEquipmentQuery1是用户控件):
DropDownList ddl=(DropDownList)UcEquipmentQuery1.FindControl("DropDownList1");
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);
}
b.在页面代码中重载OnBubbleEvent方法,如:
protected override bool OnBubbleEvent(object source,System.EventArgs arg)
{
if(source is DropDownList)
{
//处理
return true;
}
return base.OnBubbleEvent(source,arg);
}
注:此种方法不适用于一个页面里有多个用户控件的情况。
方法:
在页面的Page_Load事件里写如下代码(UcEquipmentQuery1是用户控件):
DropDownList ddl=(DropDownList)UcEquipmentQuery1.FindControl("DropDownList1");
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);
}
b.在页面代码中重载OnBubbleEvent方法,如:
protected override bool OnBubbleEvent(object source,System.EventArgs arg)
{
if(source is DropDownList)
{
//处理
return true;
}
return base.OnBubbleEvent(source,arg);
}
注:此种方法不适用于一个页面里有多个用户控件的情况。
相关文章推荐
- 一个非常不错的业务规则管理器
- 看到一篇好文章与大家分享!!!!!
- 初学者的问题----csdn系列
- Manage Control Flow in Struts Apps
- VB.NET学习资料:
- HashMap vs FastHashMap
- 从java线程中获得运算结果
- 轻松搞定数据访问层1
- 轻松搞定数据访问层3
- 轻松搞定数据访问层4
- 在asp中显示统计图表
- 在 Web 页面中使用图表(chart)表现数据
- 文件上传的一点心得
- 给C++初学者的50个忠告
- 左键也能弹出菜单
- Microsoft Agent 学习笔记 (一)
- 在DataGrid页眉上添加全选的CheckBox控件
- 将Asp.net页面输出为HTML
- ASP.NET对IIS中的虚拟目录进行操作
- .NET资源文件的创建、使用