zq198972510
zq198972510
2015-06-13 04:43

asp.net中导出DataGrid内容为word遇到的问题!

  • textbox控件
  • html5
  • word

在asp.net中导出DataGrid内容到word时,html页面中的textbox控件也被导到word了,想问一下,怎么只到出DataGrid中textbox的文字内容到word,不要把textbox控件也导出来了!

Table Gridviewtable = ((Table)GridView1.Controls[0]);
string bankCard = ((TextBox)Gridviewtable.Rows[0].FindControl("textbox1")).Text;
Response.Buffer = true;
Response.Charset = "utf-8";

    //下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开

    //filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc || .xls || .txt ||.htm

    Response.AppendHeader("Content-Disposition", "attachment;filename='"+bankCard+".doc");
    Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");

    //Response.ContentType指定文件类型 可以为application/ms-excel || application/ms-word || application/ms-txt || application/ms-html || 或其他浏览器可直接支持文档

    Response.ContentType = "application/ms-word";
    this.EnableViewState = false;


    System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
    System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);

    GridView1.RenderControl(oHtmlTextWriter);//主要是这句话怎么改,这里是全部输出到word

    //this 表示输出本页,你也可以绑定datagrid,或其他支持obj.RenderControl()属性的控件

    Response.Write(oStringWriter.ToString());
    Response.End();

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答

为你推荐