C# 在
2.0 之前的 C# 版本中,声明委托的唯一方法是使用命名方法。
2.0 引入了匿名方法,
而在 C# 3.0 及更高版本中,Lambda 表达式取代了匿名方法,作为编写内联代码的首选方式。
为了区分它们3个咱们创建个演示程序。
1、首先新建一个.net3.0以上的Winfrom程序。
2、然后拖上来3个按钮,但不要双击按钮。
3、通过右键查看代码来到后台
4、写下以下代码,区分匿名方法、委托和Lambda表达式。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace 匿名方法
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
button1.Click += new EventHandler(button1_Click);
button2.Click += delegate{ MessageBox.Show("匿名方法!"); };
button3.Click += (System.Object o, System.EventArgs e) =>
{
MessageBox.Show("Lambda!");
};
}
void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("委托!");
}
}
}