Отрендерить контрол в строку в ASP.NET 2.0
Понадобилось мне отредерить GridView в строку, такой вот код
public static string RenderControl(Control ctrl)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
System.IO.StringWriter tw = new System.IO.StringWriter(sb);
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);
ctrl.RenderControl(hw);
return sb.ToString();
}
взято
отсюда, прекрасно работал в FW 1.1. В FW 2.0 падаем со словами: Exception Details: System.Web.HttpException: Control 'GridView1' of type 'GridView' must be placed inside a form tag with runat=server. Описание проблемы на фидбек сайте Microsoft
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=118285 Вобщем на странице нужно заоверрайдить метод VerifyRenderingInServerForm, вот так например:
public override void VerifyRenderingInServerForm(Control control)
{
}
Вот и все.