以编程方式向更新面板添加用户控件

本文关键字:添加 用户 控件 更新 编程 方式 | 更新日期: 2023-09-27 18:14:31

在我的asp.net应用程序中,我需要能够根据数据库中的数据动态添加用户控件。

例如,在page1上,我将三个元素绑定到一个中继器:

  1. 一些html内容
  2. 用户控件
  3. 更多的html内容。

页面上的中继器被一个updatepanel

包围
(updatemode=conditional, childrenastriggers=false)

用户控件也有它自己的updatepanet

(updatemode=conditional, childrenastriggers=true)

那么,我得到的是这样的东西:

outer update panel<br/>
  repeater<br/>
    item 1 = html<br/>
    item 2 = user control<br/>
      user control update panel<br/>
        user control content<br/>
      /user control update panel<br/>
     item 3 = html<br/>
  /repeater<br/>
/outer update panel<br/>

问题是,我的用户控件没有触发任何事件。我很确定我需要在page_init中创建控件,但我有点不确定如何做到这一点,因为我可能必须创建任意数量的不同类型的用户控件,并将它们放置在页面上的不同位置。以前有人遇到过这个问题吗?你是怎么解决的?

以编程方式向更新面板添加用户控件

步骤
  1. 添加一个占位符控件到updatepanel。

  2. 在CS文件中创建一个usercontrol的实例。
  3. 将控件添加到占位符