0

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();
    }

それが明確であることを願っています。

4

1 に答える 1

1

次のようなメソッドを使用してコントロールを初期化する必要があります

this.Load += Page_Load;

これを達成するために何をする必要があるかを正確に説明しているこの投稿を参照してください。次のセクションを必ずお読みください。"注意事項: " http://weblogs.asp.net/srkirkland/archive/2007/11/05/dynamically-render-a-web-user-control.aspx この関連記事も参考になります: Page_Load が UserControl で起動しない

于 2012-08-18T17:12:21.157 に答える