datalist 模板中有服务器控件Button ,导出excel时整个页面都会导出;
如果一步步调试的会报:类型DataList的控件DataList1必须放置在具有runat=server的窗体标记内,如果没有那个Button就没问题!
我查这个错误很多解释都是要加public override void VerifyRenderingInServerForm(Control control){}函数,可是我加了不解决问题
如果一步步调试的会报:类型DataList的控件DataList1必须放置在具有runat=server的窗体标记内,如果没有那个Button就没问题!
我查这个错误很多解释都是要加public override void VerifyRenderingInServerForm(Control control){}函数,可是我加了不解决问题
或隐藏导出或打开excel模板导出数据
System.Web.UI.Control dl = this.DataList1;
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.Charset = "GB2312 ";
//设置文件名,及下载格式
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + DateTime.Now.ToString("yyMMddHHmmss") + "wssp.xls");
HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312"); dl.EnableViewState = false;
StringWriter strWriter = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(strWriter);
//设置到处内容控件(Anyone 父类Control即可)
dl.RenderControl(hw);
HttpContext.Current.Response.Write(strWriter.ToString());
//释放资源
strWriter.Dispose();
hw.Dispose();
HttpContext.Current.Response.End();
dl.RenderControl(hw);报错