关于(object sender, EventArgs e)

解析object sender,EventArgs e 一直想写点《浅析object sender,EventArgs e》的文章,发现很多朋友已经做了,就先转两篇,作个总结吧。http://hi.baidu.com/swdraven/blog/item/3784f0dda5fcc8375882dd07.htmlobject sender,EventArgs e的一些讲解 ()2007-10-17 18:21 阅读详情

在日常开发中,大多数控件都需要写触发函数,而触发函数中的两个参数 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进行了点击呢,就要用到触发函数中的参数来判断。

 

 

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

 

另一个例子:

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

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

 

这时,我在图片上任意地方点击后,就会显示出点击时的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" />

 

 

 

 

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

深入探讨C#中的Object senderEventArgs e 在C#中,事件处理机制允许对象在发生特定事件时通知订阅者。是一个非常重要的参数,它在事件处理器中作为第一个参数传递。它表示触发事件的对象。此参数是类型的,因此它可以引用任何类型的对象,包括那些派生自的自定义对象。了解sender参数的本质对于理解事件是如何在不同对象间传递非常关键。从委托声明中可以看到,事件处理器被设计成可接收任意对象作为发送者。这种设计使得事件处理非常灵活,可以适用于多种不同的场景。 阅读详情

相关推荐

浅析C#中object-senderEventArgs-e

浅析C#中object_senderEventArgs_e

WinForm事件中的Object senderEventArgs e参数

Windows程序有一个事件机制。用于处理用户事件。 在WinForm中我们经常需要给控件添加事件。例如给一个Button按钮添加一个Click点击事件。给TextBox文本框添加一个KeyPress 键盘按下事件。通过强大的IDE,双击控件就能直接添加一个该控件默认的事件。 private void btnError_Click(object sender, EventArgs e) ...

weixin_33725239的博客 2431

浅析C# 中object senderEventArgs e

了解C#中的预定义事件处理机制 在写代码前我们先来熟悉.net框架中和事件有关的类和委托,了解C#中预定义事件的处理。 EventArgs是包含事件数据的类的基类,用于传递事件的细节。 EventHandler是一个委托声明如下 public delegate void EventHandler( object sender, EventArgs e ) 注意这里的参数,前者是一个对象(其实这里传递的是对象的引用,如果是button1的click事件则sender就是button1),后面是包含事件数据的类的基类。

object sender,EventArgs e的一些讲解

说的通俗一些,就是:        有一个叫做EventHandler 的家伙,他会告诉你(主程序),有一些事情发生了:这个事情是谁导致的呢?是某个object类型对象导致的,它用Source或Sender来表示。这个事情是什么事呢?e的内容就是事情的内容了。 至于Source和Sender,没有区别,你想用哪个就用哪个,其实都是一样的。 所以,我们在程序中的事件处理函数就是依赖于这个东西实

Finder_Way 3795

关于事件参数object sender, 事件类型 e)的学习笔记

关于事件参数Sender,e的简单解释

weixin_46563153的博客 1146

C# 函数中(object sender, EventArgs e)参数是什么意思

C# 函数中(object sender, EventArgs e)参数是什么意思

Major_S的博客 1万+

c#对object senderEventArgs e 的解释

当我们生成一个button点击按钮时间的时候,会有这样的一个方法。其中两个参数 object senderEventArgs e当你双击界面上的“停止”按钮时,Visual Studio 会自动为你生成这个方法。括号里的和是 C# 中所有“事件”(比如点击按钮、移动鼠标、接收设备数据)的标准标配。

like_sunshine978的博客 520

object senderEventArgs e

说的通俗一些,就是: 有一个叫做EventHandler 的家伙,他会告诉你(主程序),有一些事情发生了:这个事情是谁导致的呢?是某个object类型对象导致的,它用Source或Sender来表示。这个事情是什么事呢?e的内容就是事情的内容了。 至于Source和Sender,没有区别,你想用哪个就用哪个,其实都是一样的。 所以,我们在程序中的事件处理函数就是依赖于这个东西实现的:比

空白 9745

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

C#窗体程序有很多的时间,比如按钮点击事件,双击事件,Form_Load事件,这些事件的实现里都有两个参数(object sender,EventArgs e),什么意思呢? 我们新建一个窗体程序,双击产生Load事件。 我们可以看到,Form1_Load(object sender, EventArgs e)本质就是一个有两个参数的函数。那么函数怎么能够自己调用自己呢?不能。它肯定咋某个地方...

杰西笔记 1万+

(object sender, EventArgs e)中的sender 和e有什么用呀?

(object sender, EventArgs e)中的sender 和e有什么用呀?请写段代码解释一下它们的作用,最好详细的解释一下,谢谢各位了!我学的是GUI中的winform e有什么用法呀?“就是你点击的button.可以通过类型转换得到这个button的引用”那sender 在其中扮演什么作用?恳求仔细的说明!最好是代码说明!不胜感激……拖鞋不脱好强呀!

jueng 1428

Asp.Net之Object sender,EventArgs e的认识

  带有Object   sender,EventArgs   e   参数的函数是事件处理函数。sender表示引发此事件的对象,e是事件参数,根据事件的不同,事件参数类型可能不同。但都以EventArgs为基类,普通函数不需要带这些参数。    如:Web控件:  处理函数: protected void smtDownList(object sender, EventArg

Cloud.L 每天一点点~ 2263

C# 函数参数object sender, EventArgs e

object sender:表示触发事件的控件对象 EventArgs e:表示事件数据的类的基类 Windows程序有一个事件机制。用于处理用户事件。 在WinForm中我们经常需要给控件添加事件。例如给一个Button按钮添加一个Click点击事件。给TextBox文本框添加一个KeyPress 键盘按下事件。通过强大的IDE,双击控件就能直接添加一个该控件默认的事件。 1...

滴水石穿 1万+

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

(object sender, EventArgs e)是C#常见的事件消息参数,这两个参数具体表示什么意思呢? sender是事件源,表示触发事件的那个组件, 如(button/label/listview...),比如说你单击button,那么sender就是buttonEventArgs是事件参数,它用来辅助你处理事件,比如说你用鼠标点击窗体,那么EventArgs是会包含点击的位置等等 e是一个类,存事件要用的数据...

IT技术猿猴的博客 2009

object sender, EventArgs e什么意思

sender的意思是“寄件人,发送机”等,在C#中每点击一个事件自动生成的参数中都有(object sender, EventArgs e),其实sender就是你所关联的控件,可以通过强制转换得到该控件的引用。private void label1_MouseClick(object sender, MouseEventArgs e) { Label se

Scarlett_OHara的博客 4866

object senderEventArgs e含义

sender是事件源比如说你按下按钮,那么sender就是按钮 又如:textboxchange,sender就是该textbox,在事件处理中就可以用sender代替textbox. 如: (sender as TextBox).Text="fdsaewfsda"; Winfrom程序当中大部分时候是控件 EventArgs是事件参数//该事件传入的参数...

weixin_30894389的博客 178
上一篇: C#常用数据类型汇总
下一篇: WebService小讲
mark4ever
博客等级 码龄17年 31粉丝 63原创
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值