如何:将多个事件连接到 ASP.NET 网页中的单个事件处理程序
2014-02-24 11:15
274 查看
此页面仅适用于 Microsoft Visual Studio 2005/.NET Framework 2.0 同时提供下列产品的其他版本: Microsoft Visual Studio 2008/.NET Framework 3.5 Microsoft Visual Studio 2010/.NET Framework 4 ASP.NET 如何:将多个事件连接到 ASP.NET 网页中的单个事件处理程序 如果已具有一个事件处理程序,可以将几个控件事件绑定到该事件处理程序。只要事件全部具有相同的方法签名,则这几个事件可以来自同一个控件,而一个事件也可以来自数个不同的控件。例如,您可能希望将 ASP.NET 页上几个 Button 服务器控件的 Click 事件绑定到单个事件处理程序。在调用处理程序后,您可以确定哪个控件引发了事件。 在页标记中,向每个控件添加相同的事件名称和方法名称,如下面的代码示例所示。 |
注意 |
---|
必须确保方法具有它处理的事件的正确签名。 |
在 Visual Basic 中将多个事件连接到单个事件处理程序
通过添加某方法应当处理的事件的名称修改该方法的 Handles 子句。使用逗号分隔事件名称。下面的代码示例说明如何将 Button_Click 方法绑定到由三个 Button 控件引发的事件。
Visual Basic
Sub Button_Click (ByVal sender as System.Object, _ ByVal e as System.EventArgs) _ Handles Button1.Click, Button2.Click, Button3.Click
注意 |
---|
如果使用 Handles 子句绑定事件和方法,则也不要在标记中包含事件属性。例如,不要在 Button 控件的标记中包含 onClick 属性。如果您这样做,将会调用该方法两次。 |
确定哪个控件引发了事件
在事件处理程序中,声明其类型与引发事件的控件匹配的变量。将事件处理程序的第一个参数分配给变量,并将它强制转换为适当的类型。
下面的代码示例显示由几个不同按钮调用的 Button 控件的 Click 事件的处理程序。该处理程序显示引发事件的按钮的 ID 属性。
Visual Basic
Private Sub Button_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles Button1.Click, Button2.Click, Button3.Click Dim b As Button = CType(sender, Button) Label1.Text = b.ID End Sub
C#
private void Button_Click(object sender, System.EventArgs e) { Button b = (Button) sender; Label1.Text = b.ID; }
请参见
其他资源
ASP.NET网页中的服务器事件处理
相关文章推荐
- 如何:在 ASP.NET 网页中对事件处理程序进行运行时动态绑定
- Asp.Net 利用反射获得委托和事件以及创建委托实例和添加事件处理程序
- 解决asp.net Sharepoint无法连接发布自定义字符串处理程序,不能进行输出缓存处理的方法
- Asp.net页面事件引发后台程序处理原理【转】
- ASP.NET程序中常用的事件处理
- 【C#】对异步请求处理程序IHttpAsyncHandler的理解和分享一个易用性封装 【手记】走近科学之为什么明明实现了IEnumerable<T>的类型却不能调用LINQ扩展方法 【手记】手机网页弹出层后屏蔽底层的滑动响应 【手记】ASP.NET提示“未能创建类型”处理 【Web】一个非常简单的移动web消息框 【手记】解决EXCEL跑SQL遇“查询无法运行或数据库表无法打开...”
- 关于ASP.NET 中 Global.asax 文件的后台事件处理程序
- 使用jQuery的validation后,无法引发asp.net按钮的事件处理程序
- 以编程方式向 ASP.NET 控件添加客户端事件处理程序--TextBox.Attributes.Add()
- Asp.net页面事件引发后台程序处理原理
- asp.net 读取一个文本文件,并输出到网页显示 通过 一般处理程序实现
- Asp.Net中使用HTTP处理程序连接MySQL数据库
- Asp.net页面事件引发后台程序处理原理
- ASP.NET 应用程序级别的事件处理程序
- Asp.net页面事件引发后台程序处理原理
- ASP.NET Google Maps Javascript API V3 实战基础篇一获取和设置事件处理程序中的属性
- ASP.NET中在一般处理程序中如何使用session
- ASP.NET Google Maps Javascript API V3 实战基础篇一获取和设置事件处理程序中的属性
- 使用HTML页面和一般处理程序模拟ASP.NET WebForms中的事件