关于C#事件处理函数中的参数(object sender, EventArgs e)

1、是事件源,表示触发事件的那个组件
   如(button/label/listview...),比如说你单击button,那么sender就是button

 

2、EventArgs是事件参数,它用来辅助你处理事件

   比如说你用鼠标点击窗体,那么EventArgs是会包含点击的位置等等

   例:

1
2
3
4
5
private void label1_MouseClick(object sender, MouseEventArgs e) 
        Label senderLabel = (Label)sender; // 根据sender引用控件 
        senderLabel.Text = e.Button.ToString(); // 根据e中的button参数,判断是左键按下还是右键 
}

  

3. e代表事件对象,里面有该事件的信息...... e只是习惯的名称,当然你也可以命名为其它的,你写成 a b c d f g h i j都可以。

 

4. e是一个类,存事件要用的数据。不同的事件e可能不同
TreeNodeMouseClickEventArgs有下面几个属性(来自MSDN):
名称 说明 
  Button  获取曾按下的是哪个鼠标按钮。 (继承自 MouseEventArgs。) 
  Clicks  获取按下并释放鼠标按钮的次数。 (继承自 MouseEventArgs。) 
  Delta  获取鼠标轮已转动的制动器数的有符号计数。制动器是鼠标轮的一个凹口。 (继承自 MouseEventArgs。) 
  Location  获取鼠标在产生鼠标事件时的位置。 (继承自 MouseEventArgs。) 
  Node  获取被单击的节点。 
  X  获取鼠标在产生鼠标事件时的 x 坐标。 (继承自 MouseEventArgs。) 
  Y  获取鼠标在产生鼠标事件时的 y 坐标。 (继承自 MouseEventArgs。) 

 

5. 不同的事件的这个e的内容不同,例如鼠标移动的事件就会包含鼠标的X,Y坐标信息等,如果是键盘事件,这个e里面会包含你当前是按的哪个键的信息,有没有按Ctrl键、Alt键等等。

这就是事件发生时的一些参数情况。不同的事件,这个参数是不同的类型,包含的信息也不同。

想了解更多C#知识,请扫描下方公众号二维码

 

 

需加微信交流群的,请加小编微信号z438679770,切记备注 加群,小编将会第一时间邀请你进群!

posted @   zls366  阅读(896)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示