【发布时间】:2012-09-10 14:53:00
【问题描述】:
我试图理解为什么我不能在构造函数的最后一行邀请事件? 构建结束后是否会发生“formload”事件?
public Form1()
{
InitializeComponent();
button1.Text = "a";
button1.PerformClick();
}
private void button1_Click(object sender, EventArgs e)
{
button1.Text = "b";
}
【问题讨论】:
-
Does the event "formload" occur after construction ends?确实如此。Load事件在表单变得可见时触发,而不是在构造时触发。 -
考虑一个 button1_Click_Helper 类来完成实际工作并直接调用助手。
-
@Blam 你不需要创建一个辅助方法来做到这一点。您可以按原样执行
button1_Click方法。 -
@Servy 但是按原样执行该方法不起作用。
-
@Blam 他没有按原样执行方法,他使用
PerformClick来触发事件,而不是仅仅调用他也分配给事件处理程序的方法。