有人向我提到 c# 支持使用 lambda 表达式作为事件处理程序,有人可以与我分享一些关于此的参考吗?
首选代码片段。
您可以使用 lambda 表达式来构建一个匿名方法,该方法可以附加到一个事件。
例如,如果您使用 aButton
和 a创建 Windows 窗体Label
,则可以在构造函数中(在 之后InitializeComponent()
)添加:
this.button1.Click += (o,e) =>
{
this.label1.Text = "You clicked the button!";
};
这将导致标签在单击按钮时发生变化。
试试这个例子
public Form1()
{
InitializeComponent();
this.button1.Click += new EventHandler(button1_Click);
}
void button1_Click(object sender, EventArgs e)
{
}
上面的事件处理程序可以使用这个 lambda 表达式重写
public Form1()
{
InitializeComponent();
this.button1.Click += (object sender, EventArgs e) = >
{
MessageBox.Show(“Button clicked!”);
};
}