[英]Loading a user control dynamically
我正在嘗試在Web服務中加載用戶控件,但是它不執行Load_Page()。
我嘗試使用:
HttpContext.Current.Server.Execute(page, text, false);
但是它返回一個NullException。 這是我的代碼:
public string Controle(string url)
{
Page page = new Page();
UserControl userControl = (UserControl)page.LoadControl(url);
//userControl.EnableViewState = false;
HtmlForm form = new HtmlForm();
form.Controls.Add(userControl);
page.Controls.Add(form);
StringWriter text = new StringWriter();
HtmlTextWriter htmltext = new HtmlTextWriter(text);
userControl.RenderControl(htmltext);
return text.ToString();
}
希望清楚。
您需要使用類似以下方法的方法來初始化控件
this.Load + = Page_Load;
請參閱這篇文章,其中確切說明了實現此目的需要執行的操作。 請務必閱讀本節中的說明; “ 一個警告的提示: ” http://weblogs.asp.net/srkirkland/archive/2007/11/05/dynamically-render-a-web-user-control.aspx此相關文章也將能夠為您提供幫助: 無法在UserControl中觸發Page_Load
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.