C# 传递参数的事件(Event)响应

使用场景

开发环境:VS 2013 Pro, .Net Framework 4.5

C#开发窗口程序,通常对于单击按键这种事件,其响应方式为直接触发对应的button.click函数,而这一触发过程是不能传递参数的,程序中对应的代码如下

button1.Click += new System.EventHandler(this.buttom1_Click);

开发过程中,某个事件响应函数需要依赖一个输入的变量,该变量随事件的触发而更新,且需要随着触发消息一同传入响应函数,于是需要其他方法

代码

button2.Click += (e, a) => OnMyButton(c);

采用这种方式,可以将button.click的消息采用自定义函数来响应,而自定义函数可以传递任意参数,只要调用与定义一致即可,由此实现了传递参数的事件响应

查找发现,类似的这种语句是 lambda表达式

(input-parameters) => expression
(input-parameters) => { <sequence-of-statements> }

你可能感兴趣的:(Skills,GUI开发,c#)