首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过UpdatePanels ()加载的UserControl中的LoadControl不工作吗?

通过UpdatePanels ()加载的UserControl中的LoadControl不工作吗?
EN

Stack Overflow用户
提问于 2010-07-04 14:26:29
回答 1查看 610关注 0票数 0

我希望你能帮上忙,因为我已经把头撞在墙上了。长话短说,我想用包含自己的更新文件的UserControls动态加载LoadControl,当它们出现在页面上时,可以通过自己的子程序单独触发更新。

为了更好地解释,请参阅我的问题的非常简化的示例:

Default.aspx

代码语言:javascript
复制
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
    <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
</div>
</form>

Default.aspx.vb

代码语言:javascript
复制
 IF Me.IsPostBack = False
 Dim control As Control = LoadControl("WebUserControl.ascx")
 PlaceHolder1.Controls.Add(control)
 Dim control2 As Control = LoadControl("WebUserControl.ascx")
 PlaceHolder1.Controls.Add(control2)
 Dim control3 As Control = LoadControl("WebUserControl.ascx")
 PlaceHolder1.Controls.Add(control3)
 End If

WebUserControl.ascx

代码语言:javascript
复制
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="true">
<ContentTemplate>
    <%= Now.ToLongTimeString%>
    <asp:Button ID="Button1" runat="server" Text="Button" />
</ContentTemplate>

如果运行此操作,我希望加载每个控件,将其添加到占位符中,然后单击该控件中的按钮,只有该控件触发更新。

相反,它似乎不起作用。

如果我使用通常的标记将控件添加到页面中,它们就可以正常工作,因此问题就在loadControl/place夹子问题中。

,救命!

EN

回答 1

Stack Overflow用户

发布于 2010-07-12 10:04:48

由于这些是动态控件,所以必须在回发时将它们添加到页面中,因此需要删除'IF Me.IsPostBack = False‘'end if’。否则,这些控件将在回发后从页面中消失。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3174956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档