0
Asp.net注入gridView需要VerifyRenderingInServerForm。但为什么?
A.aspx
我使用jQuery来访问它加载控件(ASCX),其中包含一个GridView一个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)
一切都很好,它不需要将其放置在窗体中。
我错过了什么?
它不能是一个形式里面,但谁知道只有一个你。这种异常也是防止恶意错误并提供明确错误信息的一种方法。只有控制回发需要嵌套在HtmlForm控件中。 http://msdn.microsoft.com/en-us/library/system.web.ui.page.verifyrenderinginserverform%28v=VS.100%29.aspx – 2012-01-04 09:15:54
@tim请将您的评论转换为答案。所以我可以检查它。 – 2012-01-04 09:44:51