开发者

Dynamically loading usercontrol in updatepanel

开发者 https://www.devze.com 2023-02-11 14:13 出处:网络
So I\'m trying to dynamically load a usercontrol into a placeholder in another usercontrol inside a updatepanel.

So I'm trying to dynamically load a usercontrol into a placeholder in another usercontrol inside a updatepanel.

basically I've got this markup:

<asp:UpdatePanel ID="upPopup" runat="server">
    <ContentTemplate>
        <UC:Popup runat="server" ID="UC_Popup" />
    </ContentTemplate>
</asp:UpdatePanel>

And then this markup inside that usercontrol (Popup):

<div id="modal">
    <asp:PlaceHolder ID="phPopupPlaceholder" runat="server"></asp:PlaceHolder>
    <asp:Label ID="lblModal" runat="server"></asp:Label>
</div>

In the codebehind of the popup usercontrol I have:

public void Show(UserControl control) {
    this.phPopupPlaceholder.Controls.Add(control);
    this.lblModal.Text = "Loaded";
}

And I call this show method elsewhere with:

Popup.show(new MyUserControl());

Nothing loads into the placeholder though.

But in the show method I can load regular ser开发者_Python百科ver-controls fine like this:

this.phPopupPlaceholder.Controls.Add(new Label(){ Text = "Label!" });

Can anyone explain to me why regular controls are loaded fine, but my usercontrol isn't loaded?


Okay, I learned that I HAVE to use LoadControl method apparently, but I don't quite understand why this is necessary :/

0

精彩评论

暂无评论...
验证码 换一张
取 消