必须将GridView添加到表单标记以进行呈现

TextWriter tr = new StringWriter(); HtmlTextWriter writer = new HtmlTextWriter(tr); HtmlForm form = new HtmlForm(); form.Controls.Add(divQueryDescription); divQueryDescription.RenderControl(writer); 

我的GridView在DIV中,我将DIV添加到HtmlForm,以便我可以将其渲染为字符串。 但是我收到以下错误: –

Gridview’grv’必须放在一个带有runat = server的表单标签内,尽管我的Gridview已经在表单中,因为我将DIV添加到表单中。

如何将此DIV渲染为字符串?

只需在页面中添加以下代码即可

 public override void VerifyRenderingInServerForm(Control control) { return; } 

要了解有关它的更多信息,请阅读MSDN文档 。

确保表单元素/控件中有runat =“server”

根据您在此处显示的内容, GridView尚未包含在runat="server"form元素中,您需要执行以下操作:

 

特别值得注意的是

部分及其结束标记。

更新:

看起来这个form导致了问题,因为它还没有被写出来,你直接从div写出来:尝试使用form.RenderControl(writer);