protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
bind();
}我是初学者,那个e是什么东西?我只知道好像是事件里的什么
谁能过来给俺详细说说?接着说说平时怎么用什么的谢谢
{
GridView1.EditIndex = e.NewEditIndex;
bind();
}我是初学者,那个e是什么东西?我只知道好像是事件里的什么
谁能过来给俺详细说说?接着说说平时怎么用什么的谢谢
比如如果发生鼠标移动的事件,e就可能带有移动到的位置的坐标。发生按键的事件的时候就会附带有按下了哪个键(ABCD),以及附加键,比如:Ctrl,alt,shift是否被按下的信息。
EventArgs是事件参数的意思,C#的事件类型属于观察者模式,给每一个控件,每一个事件都会绑定一个事件监听器,sender是哪个控件,GridViewEditEventArgs
是这个控件触发事件时所带有的一些参数
是事件参数,里面是事件触发后,向外部传递的信息
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{ } 里面输入"e."看看能点出一些什么有用的属性,有些你没准用的到
...{
//定义MailMsgEventArgs类型
public class MailMsgEventArgs : EventArgs
...{
//1.传递给事件接受者类型定义信息
public readonly String from,to,subject,body;
public MailMsgEventArgs(String from,String to,String subject,String body)
...{
this.from = from;
this.to = to;
this.subject = subject;
this.body = body;
}
} //2.下面委托类型定义了接受者必须实现的回调方法原型
public delegate void MailMsgEventHandler(Object sender,MailMsgEventArgs args); //3.事件成员
public event MailMsgEventHandler MailMsg; //4.下面的受保护虚方法负责通知事件的登记对象
protected virtual void OnMailMsg(MailMsgEventArgs e)
...{
//有对象登记事件?
if(MailMsg != null)
...{
//如果有,则通知委托链表上的所有对象
MailMsg(this,e);
} } //5.下面的方法将输入转化为期望的事件,该方法在新的电子邮件信息到达时被调用
public void SimulaterArrivingMsg(String from,String to,String subject,String body)
...{
//构造一个对象保存希望传递给同志接受者的信息
MailMsgEventArgs e = new MailMsgEventArgs(from,to,subject,body);
//调用虚方法同志对象事件已发生
//如果派生类型没有重写该虚方法,对象将通知所有登记事件监听者
OnMailMsg(e);
}}使用这个事件class Fax
...{
//1:将MailManager对象传递给构造器
public Fax(MailManager mm)
...{
//构造一个指向FaxMsg回调方法的MailMsgEventHandler
//委托实例,然后登记MailManager的MailMsg事件
mm.MailMsg +=new MailManager.MailMsgEventHandler(FaxMsg); } //2:MailManager将调用该方法来通知Fax对象收到一个新的电子邮件消息
private void FaxMsg(Object sender,MailManager.MailMsgEventArgs e)
...{
//参数sender表示MailManager对象,如果期望和事件的触发者通信,将会用到该参数
//参数e表示MailManager对象希望提供的一些附加事件信息
Console.WriteLine("Faxing mail message:");
Console.WriteLine("From:{0} To:{1} Subject:{2} Body:{3} ",e.from,e.to,e.subject,e.body);
}
//3:取消登记
public void Unregister(MailManager mm)
...{
MailManager.MailMsgEventHandler callback = new MailManager.MailMsgEventHandler(FaxMsg);
mm.MailMsg -=callback;
}
}
这是框架设计里的一个列子
在类型中定义一个EventArgs类型:用来保存要发送给事件接受者的附加信息。如果没有要传递的信息,可以直接使用系统的EventArgs.Emepty而不用在构造新的EventArgs对象。定义一个委托类型:指定事件触发时接受者中被调用的方法的原形。如果我们定义的事件没有需要传递给事件接收者的附加信息,我们便不必定义新的委托类型。直接使用FCL中的System.EventHandler,并将EventArgs.Emepty传递给第2个参数。
可以结合try{}catch(Exception e){}理解一下,这是捕获异常事件的
e 就是一个实例(变量) GridViewEditEventArgs 跟你的int a=100; a 是一个 int 变量一样的道量