zoukankan      html  css  js  c++  java
  • 关于(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);   

    转自:https://www.cnblogs.com/qingtaong/archive/2012/08/07/2626098.html

  • 相关阅读:
    2012619 win7环境Jooma建站手记解决问题
    linux学习(4)ubuntu开机自动挂载nfs服务器上的home分区
    linux学习(3)nginx tomcat集群
    oracle to_date 函数
    inux学习(2)vim设置
    linux学习(1)常用命令入门
    tomcat域名绑定
    tomcat内存溢出问题解决思路
    TreeView控件无限级 一次性加载和异步加载剖析
    数据查询支持中文拼音首字母模糊检索
  • 原文地址:https://www.cnblogs.com/sunice/p/9224924.html
Copyright © 2011-2022 走看看