asp.net - 从动态添加的 ASP.NET 用户控件捕获事件

标签 asp.net user-controls

我有一个 ASP.NET Web 表单,我正在向其中添加可变数量的用户控件。我有两个问题:

  1. 用户控件在第一个 PageLoad 事件中添加到表单上的占位符中(我仅在“(!this.IsPostback)”时添加它们,但是当表单回发时,控件消失了。这正常吗?由于表单上的其他控件保持其状态,我希望这些动态添加的控件也保留在表单上。我是否必须为每次回发添加它们?

  2. 我还有一个按钮和一个用于按钮单击事件的事件处理程序,但是当我单击按钮时,永远不会调用该事件处理程序。我需要做一些特殊的事情来捕获动态添加的控件上的事件吗?

最佳答案

  1. 是的,您需要在每次回发中添加它们。
  2. 是的...在 asp.net 分派(dispatch)事件之前,控件需要位于控件层次结构中(即在页面生命周期中尽早创建动态控件)。

关于asp.net - 从动态添加的 ASP.NET 用户控件捕获事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/389904/

相关文章:

c# - 将用户页面添加到托管网站

asp.net - 指定多行文本框的最大长度

c# - 我可以在以下代码中传递 if 语句吗?如果没有,还有其他选择吗?

asp.net - 在 ASPX 布局中回显 sitecore 元素名称

c# - 如何在 ASP.NET 中添加运行时的用户控件?

c# - ASP.NET : Possible to create a UserControl that include inside markup content?

asp.net - 将参数传递给中继器内的用户控件