添加按钮事件以关闭表单

时间:2014-01-29 20:34:30

标签: c# winforms events

我看到很多与此相似的问题,但没有什么可以解答的。

我想知道是否有一个事件可以添加到按钮中以直接触发form_closing例程。我意识到使用类似的东西执行此操作只需要一个额外的步骤:

buttonOk.Click += new EventHandler(do_something);

private void do_something(object sender, EventArgs e)
{
    this.DialogResult = System.Windows.Forms.DialogResult.OK;
}

但是在某些情况下,执行以下操作会带来好处:

buttonOk.Click += new EventHandler(form_close_event..);

2 个答案:

答案 0 :(得分:4)

如果您想要做的事情足够简单,您可以使用lambda来避免创建新的命名方法:

buttonOk.Click += (sender, args) => Close();

答案 1 :(得分:2)

您可以使用anonymous methodsee here)来实现此目的,但实际上它完全相同。

buttonOk.Click += delegate(object sender, EventArgs e) { ... });

您可以从内部调用任何方法,因此this.Close()也可以。