Whidbey C#: 匿名方法 | Anonymous Method

再一个WinForm中添加对其包含的一个按钮button1的Click事件的event handler,我们在C# V1.x中常常这样写:

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

 

private void button1_Click(object sender, System.EventArgs e)

{

      MessageBox.Show(“Button 1 is clicked”);

}

 

当然VS.NET的支持让我们不需要手工写出这么多代码。不过当event handler不需要使用sender, e的情况下,能不能只写出event handler的body而无需考虑代理的signature?

 

在C# V2.0,anonymous method提供了这一可能。上面的代码可以改写为:

 

this.button1.Click += delegate

{

      MessageBox.Show(“Button 1 is clicked”);

};


贴子以”现状”提供且没有任何担保也没有授予任何权利。

打赏作者