c# - 初始化后动态注册按钮点击事件

标签 c# asp.net event-handling

我想在页面中动态添加一个用户控件。单击按钮时必须添加用户控件:

protected void BtnAddCpe_Click(object sender, EventArgs e)
{
    CPEData cpeControl = Page.LoadControl("/Controls/Cpe/CPEData.ascx") as CPEData;

    cpeControl.ID = "Cpes_" + this.PhCPE.Controls.Count;
    cpeControl.ValidationGroup = "new_cpe_order";
    cpeControl.CPETypeList = this.SetCpeTypeList(this.CPETypeList);

    cpeControl.AggiungiCpeType += new CpeTypeEventHandler(Cpes_AggiungiCpeType);

    this.PhCPE.Controls.Add(cpeControl);
}

显然这条线不起作用

cpeControl.AggiungiCpeType += new CpeTypeEventHandler(Cpes_AggiungiCpeType);

因为在Init事件中必须注册事件。

那么解决问题的最佳方法是什么? 谢谢

最佳答案

我认为这篇文章应该可以帮助您解决问题,它准确地讨论了您要实现的目标:

Dynamic Loading of ASP.NET User Controls

关于c# - 初始化后动态注册按钮点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18464117/

相关文章:

c# - 为什么 C# 中的 sin(x) 函数返回 NaN 而不是数字

javascript - 为什么asp按钮的javascript click()函数在chrome浏览器中不起作用?

c# - 将对象绑定(bind)到组合框会填充列表,但选择更改不会在 CSharp 中的对象中更新

asp.net - 存储库模式可以与 Asp.net Web 表单很好地配合使用吗?

javascript - 为什么OnMouseDown事件只发生一次,如何处理鼠标按住事件

java - com.kami2017.app.MainActivity.onCreate上的Android Studio错误

c# - 对象的未引用与引用使用

javascript - 列表项背景颜色在 Ipad 上不会改变

asp.net - SqlDataSource.Select()?我该如何使用它? (ASP.net)

javascript - Backbone.js 事件处理程序不工作