标签:
在把数据导出到excel的时候,有时候会这样的错误:类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内。
System.Web.UI.Control ctl=this.GridView1;
//DataGrid1 是你在窗体中拖放的控件
HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename=Excel.xls");
HttpContext.Current.Response.Charset ="UTF-8";
HttpContext.Current.Response.ContentEncoding =System.Text.Encoding.Default;
HttpContext.Current.Response.ContentType ="application/ms-excel";
ctl.Page.EnableViewState =false;
System.IO.StringWriter tw = new System.IO.StringWriter() ;
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter (tw);
ctl.RenderControl(hw);
HttpContext.Current.Response.Write(tw.ToString());
HttpContext.Current.Response.End();
解决方法可以在页面中的cs文件里加上:
public override void VerifyRenderingInServerForm(Control control)
{
//base.VerifyRenderingInServerForm(control);
}
导出excel时报错:类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内。
标签:
原文地址:http://www.cnblogs.com/tuzhi/p/4672860.html