[英]Dynamically loading usercontrol in updatepanel
因此,我試圖將用戶控件動態加載到updatepanel內另一個用戶控件中的占位符中。
基本上我有這個標記:
<asp:UpdatePanel ID="upPopup" runat="server">
<ContentTemplate>
<UC:Popup runat="server" ID="UC_Popup" />
</ContentTemplate>
</asp:UpdatePanel>
然后在該用戶控件(Popup)中添加以下標記:
<div id="modal">
<asp:PlaceHolder ID="phPopupPlaceholder" runat="server"></asp:PlaceHolder>
<asp:Label ID="lblModal" runat="server"></asp:Label>
</div>
在彈出的usercontrol的代碼背后,我有:
public void Show(UserControl control) {
this.phPopupPlaceholder.Controls.Add(control);
this.lblModal.Text = "Loaded";
}
我在其他地方將此show方法稱為:
Popup.show(new MyUserControl());
占位符沒有任何內容。
但是在show方法中,我可以像這樣正常加載常規服務器控件:
this.phPopupPlaceholder.Controls.Add(new Label(){ Text = "Label!" });
誰能向我解釋為什么常規控件可以很好地加載,但我的usercontrol不能加載?
好的,我了解到我顯然已經使用了LoadControl方法,但是我不太明白為什么這樣做是必需的:/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.