代码中“+ =(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
表示事件委托类型的sender
和EventArgs
参数。
有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ms366768.aspx 。
它是事件处理程序的简写。 s – > object sender和e – >某种类型的EventArgs。
它也可以重写为:
public void HandlerFunction(object sender, EventArgs e) { this.loaded = true; }