在日常开发中,大多数控件都需要写触发函数,而触发函数中的两个参数 sender 和 e 的作用,就不容小视。

看下面的例子:

<asp:Button ID="Button1" runat="server" Text="Button1" OnClick="Button_OnClick" />

<asp:Button ID="Button2" runat="server" Text="Button2" OnClick="Button_OnClick" />

<asp:Button ID="Button3" runat="server" Text="Button3" OnClick="Button_OnClick" />

在上面的程序中设计了三个Button控件,他们点击后触发的函数都为Button_OnClick;那么我如何分辨出到底是哪一个Button进行了点击呢,就要用到触发函数中的参数来判断。

protected void Button_OnClick(object sender, EventArgs e) { Button btn = (Button)sender; Response.Write(btn.ID); }

这时,我将类型为object的sender变量进行转型为Button后,就可以通过他的ID属性来判断。

另一个例子:

<asp:ImageButton ID="ImageButton1" runat="server" OnClick="ImageButton_OnClick" />

我设计了一个ImageButton控件,进行点击操作时触发的函数为ImageButton_OnClick;

protected void Button_OnClick(object sender, ImageClickEventArgs e) { Response.Write("X坐标:"+e.X.ToString()); Response.Write("Y坐标:"+e.Y.ToString()); }

这时,我在图片上任意地方点击后,就会显示出点击时的X,Y坐标。

但是,参数e经常是与控件的CommandName与CommandArgument属性绑定起来进行传参的。

他们所要触发的相应操作是OnCommand而不是OnClick操作。

例:

<asp:Button ID="Button1" runat="server" Text="Button1" CommandName="Button1" OnCommand="Button_OnCommand"/>

<asp:Button ID="Button2" runat="server" Text="Button2" CommandName="Button2" OnCommand="Button_OnCommand"/>

<asp:Button ID="Button3" runat="server" Text="Button3" CommandName="Button3" OnCommand="Button_OnCommand" />

protected void Button_OnCommand(object sender, CommandEventArgs e) { Response.Write(e.CommandName); Response.Write(e.CommandArgument); }

此文仅作为抛砖引玉。。。。。

关于(object sender, EventArgs e)相关推荐

  1. 委托与事件代码详解与(Object sender,EventArgs e)详解

    委托与事件代码详解 using System; using System.Collections.Generic; using System.Text; namespace @Delegate //自 ...

  2. C# 函数参数object sender, EventArgs e

    object sender:表示触发事件的控件对象 EventArgs e:表示事件数据的类的基类 Windows程序有一个事件机制.用于处理用户事件. 在WinForm中我们经常需要给控件添加事件. ...

  3. .net (object sender, EventArgs e) 学习总结

    分析.net中的object sender与EventArgs e http://blog.csdn.net/feihu19851111/article/details/7523118 作者同类文章X ...

  4. C#事件中的两个参数(object sender,EventArgs e)

    C#窗体程序有很多的事件,比如按钮点击事件,双击事件,Form_Load事件,这些事件的实现里都有两个参数(object sender,EventArgs e),什么意思呢? 我们新建一个窗体程序,双 ...

  5. private void button1_Click(object sender, EventArgs e)

    private void button1_Click(object sender, EventArgs e) 是一个 C# 中的函数声明. 这个函数是一个事件处理器,当用户点击按钮 button1 时 ...

  6. 关于后台事件中(object sender, EventArgs e)说明

    sender是事件源 就是指发起这个事件的对象(控件) //表示触发事件的那个控件 比如说你按下按钮,那么sender就是按钮 又如:textboxchange,sender就是该textbox,在事 ...

  7. 浅谈事件处理函数中的参数(object sender, EventArgs e)

    (object sender, EventArgs e)是C#常见的事件消息参数,这两个参数具体表示什么意思呢?          sender是事件源,表示触发事件的那个组件, 如(button/l ...

  8. 委托与事件代码详解与(Object sender,EventArgs e)

    http://apps.hi.baidu.com/share/detail/30334344 委托与事件代码详解与(Object sender,EventArgs e)详解 2008-02-04 21 ...

  9. object sender, EventArgs e什么意思

    sender的意思是"寄件人,发送机"等,在C#中每点击一个事件自动生成的参数中都有(object sender, EventArgs e),其实sender就是你所关联的控件,可 ...

最新文章

  1. 2022-2028年中国铁路行业投资分析及前景预测报告(全卷)
  2. Android开发--Notification和PendingIntent
  3. 47. Permutations II 1
  4. 2017南京师范大学计算机学院录取名单,南京师范大学2017年硕士研究生复试成绩及录取名单的通知...
  5. 实验一 Part 1 开发环境的配置运行
  6. 王琪你计算机学院,计算机学院“计忆时光”2019元旦联欢会暨年度颁奖典礼圆满举行...
  7. python excel 提取特定行_Python之从Excel一列内提取数字
  8. 对话阿里云李飞飞:云原生数据库的时代来了
  9. php 分表 实战,PHP实战:1亿条数据如何分表100张到Mysql数据库中(PHP)
  10. 远程桌面中断解决技巧
  11. NUMA架构下的CPU拓扑
  12. 1000套精选微信小程序源码
  13. ES6 模板字符串基本用法
  14. 移动手机号服务密码重置
  15. 设置win7一直以管理员身份运行
  16. Android移动开发基础
  17. 8266 lua贝壳物联智能开关,更新修正tmr.alarm问题
  18. 微服务如何聚合 API 文档?这波操作也太秀了
  19. 语音信号处理初学者概念总结
  20. samba共享使用端口

热门文章

  1. 计算机基础知识-进制的运算
  2. 全连接神经网络、卷积神经网络
  3. Python利用Opencv读取图片
  4. 计算机术语中cae,厉害了 揭秘汽车设计中CAE仿真技术
  5. Python 中的取余与取整操作
  6. 教你如何听懂英语新闻
  7. 数据结构与算法课程设计
  8. ZT 王国维先生“人生三大境界”的具体含义是什么?
  9. python爬虫浏览器伪装和设置代理ip
  10. ubuntu如何安装及卸载mysql服务详细教程-图文版