0

Asp.net

A.aspx

JQuery を使用して、GridView を含むコントロール ( ascx ) をロードする ashx ファイルにアクセスしています。コントロール コンテンツがページに挿入されています...

私がこれを行うとき:

   StringWriter writer = new StringWriter();
   HttpContext.Current.Server.Execute(page, writer, false);
   string output = writer.ToString();

GridView をフォーム セクションに配置する必要があることがわかります。

だから私は自分のページを作成しました

public class MyPage: Page
    {
        public override void VerifyRenderingInServerForm(Control control)
        {
            //base.VerifyRenderingInServerForm(control);
        }
    }

その中で、このメソッドをオーバーライドします。私は自分のページを使用していますが、すべて問題ありません。

問題はなぜですか?なぜ形にしなければならないのですか?入力がありません!

また、ascx に<asp:Label ( runatServer)すべてが含まれている場合は問題なく、フォームに配置する必要はありません。

何が欠けていますか?

4

1 に答える 1

1

フォーム内にある必要はありませんが、知っているのはあなただけです。この例外は、厄介なエラーを防ぎ、明確なエラー メッセージを提供する方法でもあります。コントロールにネストする必要があるのは、ポストバックできるコントロールだけHtmlFormです。

于 2012-01-04T09:50:05.820 に答える