DataGrid 导出 EXCEL(简单,实用)

Response.ContentEncoding = 
// 有时用 gb2312 不能正常显示中文,要用 utf-8
System.Text.Encoding.GetEncoding("GB2312"); 
Response.AppendHeader(
"Content-Disposition""attachment;filename=" + "result.xls"); //必要,做成下载文件

//如果要直接在浏览器中打开,把上行注释掉,换成下面这行
//Response.ContentType = "application/vnd.ms-excel";    
   Response.Charset = ""// 从Content-Type header中去除charset设置

   
//关闭 ViewState
   this.EnableViewState = false ;
      System.IO.StringWriter tw 
= new System.IO.StringWriter();

   System.Web.UI.HtmlTextWriter hw 
= new HtmlTextWriter(tw);
   
//获取control的HTML
   DataGrid1.RenderControl(hw);
   
//把HTML写回浏览器
   Response.Write(tw.ToString());
   Response.End();

超精简,实用.


如果DataGrid用了自动分页,那要在上面的程序之前加上:
DataGrid1.AllowPaging 
= false;
BindDataGrid(); 
// 重新绑定.
..
// 上面的输出代码
..
DataGrid1.AllowPaging 
= true;

posted on 2010-07-01 15:30  董士亮  阅读(204)  评论(0编辑  收藏  举报

导航