将ASP.NET页面内的数据导出到Excel 或 Word中
2006-07-23 16:24
483 查看
在以下按钮单击事件中实现:
private void btnMIME_Click(object sender, System.EventArgs e)
{
dgShow.AllowPaging = false;
BindData();
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "inline;filename="
+ HttpUtility.UrlEncode("下载文件.xls",Encoding.UTF8 ) );
//如果输出为Word,修改为以下代码
//Response.ContentType = "application/ms-word"
//Response.AddHeader("Content-Disposition", "inline;filename=test.doc")
StringBuilder sb=new StringBuilder();
System.IO.StringWriter sw = new System.IO.StringWriter(sb);
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
sb.Append("<html><body>");
dgShow.RenderControl(hw);
sb.Append("</body></html>");
Response.Write(sb.ToString());
Response.End();
dgShow.AllowPaging = true;
BindData();
}
注:1.若DataGrid中有按钮列,则在导出前应先将其隐藏.
2.若DataGrid有分页,而又要打印所有数据的话就应先取消分页.
2006年7月19日-补充:
若为VS.NET2005中的数据绑定新控件GridView,以上代码会提示异常错误,经网上搜索,解决方案如下:
1、在导出界面中重载
public override void VerifyRenderingInServerForm(Control control)
{
//base.VerifyRenderingInServerForm(control);
}
2、在web.config中修改<pages enableEventValidation ="false" ></pages>
或
<%@ Page Language="C#" EnableEventValidation = "false" AutoEventWireup="true"
CodeFile="ExportGridView.aspx.cs" Inherits="ExportGridView" %>
private void btnMIME_Click(object sender, System.EventArgs e)
{
dgShow.AllowPaging = false;
BindData();
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "inline;filename="
+ HttpUtility.UrlEncode("下载文件.xls",Encoding.UTF8 ) );
//如果输出为Word,修改为以下代码
//Response.ContentType = "application/ms-word"
//Response.AddHeader("Content-Disposition", "inline;filename=test.doc")
StringBuilder sb=new StringBuilder();
System.IO.StringWriter sw = new System.IO.StringWriter(sb);
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
sb.Append("<html><body>");
dgShow.RenderControl(hw);
sb.Append("</body></html>");
Response.Write(sb.ToString());
Response.End();
dgShow.AllowPaging = true;
BindData();
}
注:1.若DataGrid中有按钮列,则在导出前应先将其隐藏.
2.若DataGrid有分页,而又要打印所有数据的话就应先取消分页.
2006年7月19日-补充:
若为VS.NET2005中的数据绑定新控件GridView,以上代码会提示异常错误,经网上搜索,解决方案如下:
1、在导出界面中重载
public override void VerifyRenderingInServerForm(Control control)
{
//base.VerifyRenderingInServerForm(control);
}
2、在web.config中修改<pages enableEventValidation ="false" ></pages>
或
<%@ Page Language="C#" EnableEventValidation = "false" AutoEventWireup="true"
CodeFile="ExportGridView.aspx.cs" Inherits="ExportGridView" %>
相关文章推荐
- 将ASP.NET页面内的数据导出到Excel 或 Word中 (转)
- 将ASP.NET页面内地数据导出到Excel 或 Word里面
- 将ASP.NET页面内的数据导出到Excel或Word中
- 将ASP.NET页面内的数据导出到Excel或Word中
- 将ASP.NET页面内的数据导出到Excel 或 Word中
- 将ASP.NET页面内的数据导出到Excel 或 Word中
- asp.net将控件或页面数据导出到Excel
- ASP.NET WebApi 服务端导出数据到Excel
- Asp.net 2.0 GridView数据导出Excel文件(示例代码下载)
- ASP.NET导出数据到Excel的实现方法
- ASP.NET导出数据到Excel
- asp.net导出数据到Excel的三种方法
- asp.net 导出数据到EXCEL
- C#数据库数据导入导出系列之一 ASP.NET Excel导入Sql Server数据库
- asp.net 通过 Handler 导出数据至excel (让用户下载)
- ASP.NET Grid数据导出到Excel
- ASP.NET导出数据到Excel
- ASP.NET数据列表导出为Excel
- asp.net DataSet数据导出到Excel中
- ASP.Net MVC中数据库数据导出Excel,供HTTP下载(转)