只是关于最佳实践是什么的一般问题:
public void Foo()
{
int x = 5;
myControl.Click += (o, e) =>
{
x = 6;
};
}
请注意,我x
在我的 lambda 事件处理程序中使用该变量。
或者:
public class Bar
{
private int x = 5;
public void Foo()
{
Control myControl = new Control();
myControl.Click += new EventHandler(myControl_Click);
}
private void myControl_Click(object sender, EventArgs e)
{
x = 6;
}
}
这里,x
是类的私有成员,因此我可以在我的事件处理程序中访问它。
现在假设我不需要x
代码中的其他任何地方(无论出于何种原因),哪种方法更好?