网页代码:
public partial class Default2 : Page
{
protected void Page_Load(object sender, EventArgs e)
{
Uctest ctrl = (Uctest) this.LoadControl("Uctest.ascx");
ctrl.ID = "aaa111";
Page.Controls.Add(ctrl);
}
}
Ascx代码:
public partial class Uctest : UserControl
{
protected void btn1_Click(object sender, EventArgs e)
{
}
}
我有一个页面和 ascx 。 ascx包含 asp:按钮和 asp:textbox
我的目标是进入'btn1_Click'活动。
这是有效的。 - 当我按下按钮时,它会进入事件并且一切正常。但我不明白为什么。 因为每个回发它都是RECREATING CONTROL AGAIN ,所以他怎么知道将按下的事件附加到即将发布的新创建的ascx (因为回发)?
答案 0 :(得分:0)
当您回发时,您将重新创建用户控件。
包含事件方法的用户控件是设置事件委托的用户控件,因此每次创建用户控件的实例时,它都会创建事件方法并附加它。