您的位置:首页 > 编程语言 > ASP

ASP.NET中GridView数据导出到Excel

2016-06-16 09:18 661 查看
/// <summary>
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnExport_Click1(object sender, EventArgs e)
{
this.gv.AllowPaging = false;
this.gv.AllowSorting = false;
Query();//获取数据并绑定到GridView

toExcel(this.gv);

this.gv.AllowPaging = true;
this.gv.AllowSorting = true;
Query();//获取数据并绑定到GridView
}
/// <summary>
/// 导出到Excel
/// </summary>
/// <param name="gv"></param>
void toExcel(GridView gv){
Response.Charset = "GB2312";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");

string fileName = "export.xls";
string style = @"<style> .text { mso-number-format:\@; } </script> ";
Response.ClearContent();
Response.AddHeader("content-disposition", "attachment; filename=" + fileName);
Response.ContentType = "application/excel";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
this.gv.RenderControl(htw);
Response.Write(style);
Response.Write(sw.ToString());
Response.End();
}
/// <summary>
/// 这个重写貌似是必须的
/// </summary>
/// <param name="control"></param>
public override void VerifyRenderingInServerForm(Control control) { }

备注:

1、gv就是页面上的GridView空间名称;

2、代码中的Query方法所做的是,获取数据并绑定到GridView。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: