关于(object sender, EventArgs e)
sender是事件源 就是指发起这个事件的对象(控件)
//表示触发事件的那个控件
比如说你按下按钮,那么sender就是按钮
又如:textboxchange,sender就是该textbox,在事件处理中就可以用sender代替textbox.
如:
(sender as TextBox).Text="fdsaewfsda";
如果同一类控件处理方法相同,可以只写一个事件处理,其他的用这一个就行了sender就会指代当前触发事件的控件
EventArgs是事件参数
//该事件传入的参数,比如说你用鼠标点击窗体
那么EventArgs是会包含点击的位置等等参数
它用来辅助你处理事件
在日常开发中,大多数控件都需要写触发函数,而触发函数中的两个参数 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);
}
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());
}
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)的更多相关文章
- C#之winform基础 button1_Click(object sender, EventArgs e)中sender是啥及其用法
镇场诗: 大梦谁觉,水月中建博客.百千磨难,才知世事无常. 今持佛语,技术无量愿学.愿尽所学,铸一良心博客.---------------------------- ...
- 委托与事件代码详解与(Object sender,EventArgs e)详解
委托与事件代码详解 using System;using System.Collections.Generic;using System.Text; namespace @Delegate //自定义 ...
- checkBox1_CheckedChanged(object sender, EventArgs e)和checkBox1_CheckStateChanged(object sender, EventArgs e)不同
using System; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms ...
- C# 函数参数object sender, EventArgs e
object sender:表示触发事件的控件对象EventArgs e:表示事件数据的类的基类 Windows程序有一个事件机制.用于处理用户事件. 在WinForm中我们经常需要给控件添加事件.例 ...
- 浅析C# 中object sender与EventArgs e (转)
一.了解C#中的预定义事件处理机制 在写代码前我们先来熟悉.net框架中和事件有关的类和委托,了解C#中预定义事件的处理. EventArgs是包含事件数据的类的基类,用于传递事件的细节. Ev ...
- WinForm事件中的Object sender和EventArgs e参数
Windows程序有一个事件机制.用于处理用户事件. 在WinForm中我们经常需要给控件添加事件.例如给一个Button按钮添加一个Click点击事件.给TextBox文本框添加一个KeyPress ...
- Visual Studio2013应用笔记---WinForm事件中的Object sender和EventArgs e参数
Windows程序有一个事件机制.用于处理用户事件. 在WinForm中我们经常需要给控件添加事件.例如给一个Button按钮添加一个Click点击事件.给TextBox文本框添加一个KeyPress ...
- object sender ,EventArs e
引用:http://blog.csdn.net/kongbai308416350/article/details/4233786 说的通俗一些,就是: 有一个叫做EventHandler 的家伙,他会 ...
- (object sender,EventArgs e)是什么?
object sender:发出事件的对象 EventArgs e:对象中的数据
随机推荐
- SQLServer2008设置 开启远程连接
SQLServer2008设置 开启远程连接 前一段时间,学生分组做项目,使用SVN工具,要求功能使用存储过程,在数据库这块出现这么一个问题: A学生在他的数据库上添加了存储过程,需要其他的B,C,D ...
- asp.net mvc 多级文件夹
ASP.NET MVC - 定制属于你自己的ViewEngine 标签: asp.netmvcstring引擎razorapplication 2012-07-26 14:17 5365人阅读 评论( ...
- Android笔记:HTTP相关
发送HTTP请求 HttpURLConnection.HttpClient XML解析 Pull 解析.SAX 解析.DOM 解析 解析JSON 格式数据 官方提供的JSONObject.谷歌的开源库 ...
- [Android Pro] 常用的android工具类和库
reference to : http://blog.csdn.net/lovexieyuan520/article/details/50614086 这篇博客主要记录我认为比较有用的Android ...
- javascript 核心语言笔记- 3 - 类型、值和变量
JavaScript 中的数据类型分为两类:原始类型(primitive type)和对象类型(object type).原始类型包括数字.字符串和布尔值 JavaScript 中有两个特殊的原始值: ...
- php 总结第一篇(望大家补充!谢谢)
/* 数组的常用函数 * * 数组的排序函数 * sort() * rsort() * usort() * asort() * arsort() * uasort() * ...
- Power BI的一些视频演示资源
Power BI作为Self Service BI的方案,得到了人们的广泛关注.Power BI里的大多数组件目前还都是预览版的阶段,但是我们已经可以从powerbi.com网站下体验到其相当给力的一 ...
- [Java 基础]sun.misc.Unsafe
使用Unsafe可以干一些好事. Unsafe对象初始化 如果你的代码属于trusted的,可以直接使用下面的方式: public static Unsafe getUnsafe() { Class ...
- myeclipse 破解
Myeclipse 2014 破解补丁,首先需要先下载 Myeclipse 2014 官方安装文件,下载地址 http://www.jb51.net/softs/150886.html,然后下载此补丁 ...
- Entity Framework 实体框架的形成之旅--实体数据模型 (EDM)的处理(4)
在前面几篇关于Entity Framework 实体框架的介绍里面,已经逐步对整个框架进行了一步步的演化,以期达到统一.高效.可重用性等目的,本文继续探讨基于泛型的仓储模式实体框架方面的改进优化,使我 ...