代码中“+ =(s,e)”的含义是什么?

代码中的+= ( s, e )究竟是什么?

例:

this.currentOperation.Completed += ( s, e ) => this.CurrentOperationChanged();

这是使用Lambda表达式附加事件处理程序的方法。

例如:

 button.Click += new EventHandler(delegate (Object s, EventArgs e) { //some code }); 

可以使用lambda重写如下:

 button.Click += (s,e) => { //some code }; 

有一点需要注意。 没有必要写’s’和’e’。 你可以使用任何两个字母,例如

 button.Click += (o,r) => {}; 

第一个参数表示触发事件的对象,第二个参数表示可以在事件处理程序中使用的数据。

此代码以Lambda表达式的forms添加事件侦听器。 s代表发件人e代表EventArgs 。 Lambda for

 private void Listener(object s, EventArgs e) { } 

这是一个委托实例(lambda表达式的开头)到事件调用列表的赋值。 s, e表示事件委托类型的senderEventArgs参数。

有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ms366768.aspx 。

它是事件处理程序的简写。 s – > object sender和e – >某种类型的EventArgs。

它也可以重写为:

 public void HandlerFunction(object sender, EventArgs e) { this.loaded = true; }