将gridview1输出到docx

将gridview1输出到docx,gridview,docx,Gridview,Docx,嗨,我试图在托管的.net软件包上使用iTextSharp,但由于安全限制,遇到了麻烦。然后我决定改为输出到word文档,它可以工作,但是它似乎只允许我导出到.doc,而不允许导出到.docx,这有点问题。还有没有一种方法可以使文档呈现横向 下面是我发现的用于.doc的纵向代码 protected void ButtonWord_Click(object sender, EventArgs e) { Response.Clear(); Response.Buffer = tru

嗨,我试图在托管的.net软件包上使用iTextSharp,但由于安全限制,遇到了麻烦。然后我决定改为输出到word文档,它可以工作,但是它似乎只允许我导出到.doc,而不允许导出到.docx,这有点问题。还有没有一种方法可以使文档呈现横向

下面是我发现的用于.doc的纵向代码

protected void ButtonWord_Click(object sender, EventArgs e)
{

    Response.Clear();
    Response.Buffer = true;
    Response.AddHeader("content-disposition",

    "attachment;filename=GridViewExport.doc");

    Response.Charset = "";
    Response.ContentType = "application/vnd.ms-word ";

    StringWriter sw = new StringWriter();

    HtmlTextWriter hw = new HtmlTextWriter(sw);

    GridView1.AllowPaging = false;
    GridView1.DataSource = Session["tblConversations"];
    this.GridView1.Columns[1].Visible = false;
    this.GridView1.Columns[2].Visible = false;
    this.GridView1.Columns[3].Visible = false;
    this.GridView1.Columns[0].Visible = false;
    GridView1.DataBind();

    GridView1.RenderControl(hw);

    Response.Output.Write(sw.ToString());

    Response.Flush();

    Response.End();

}
我在这里找到了解决办法

它不导出到docx,但只导出doc

protected void ButtonWord_Click(object sender, EventArgs e)
{

    Response.Clear();
    Response.Buffer = true;
    Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.doc");
    Response.Charset = "";
    Response.ContentType = "application/vnd.ms-word ";
    Response.Write("<html>");
    Response.Write("<head>");
    Response.Write("<META HTTP-EQUIV='Content-Type' CONTENT='text/html; charset=UTF-8'>");
    Response.Write("<meta name=ProgId content=Word.Document>");
    Response.Write("<meta name=Generator content='Microsoft Word 9'>");
    Response.Write("<meta name=Originator content='Microsoft Word 9'>");
    Response.Write("<style>");
    Response.Write("@page Section1 {size:595.45pt 841.7pt; margin:1.0in 1.25in 1.0in 1.25in;mso-header-margin:.5in;mso-footer-margin:.5in;mso-paper-source:0;}");
    Response.Write("div.Section1 {page:Section1;}");
    Response.Write("@page Section2 {size:841.7pt 595.45pt;mso-page-orientation:landscape;margin:1.25in 1.0in 1.25in 1.0in;mso-header-margin:.5in;mso-footer-margin:.5in;mso-paper-source:0;}");
    Response.Write("div.Section2 {page:Section2;}");
    Response.Write("</style>");
    Response.Write("</head>");
    Response.Write("<body>");
    Response.Write("<div class=Section2>");
    StringWriter sw = new StringWriter();
    HtmlTextWriter hw = new HtmlTextWriter(sw);
    GridView1.AllowPaging = false;
    GridView1.DataSource = Session["tblConversations"];
    GridView1.DataBind();
    this.GridView1.Columns[1].Visible = false;
    this.GridView1.Columns[2].Visible = false;
    this.GridView1.Columns[3].Visible = false;
    this.GridView1.Columns[0].Visible = false;
    GridView1.RenderControl(hw);
    Response.Write(sw.ToString());
    Response.Write("</div>");
    Response.Write("</body>");
    Response.Write("</html>");
    Response.Flush();
    Response.End();

}
protectedvoid按钮word\u单击(对象发送者,事件参数e)
{
Response.Clear();
Response.Buffer=true;
AddHeader(“内容处置”、“附件;文件名=GridViewExport.doc”);
响应。Charset=“”;
Response.ContentType=“application/vnd.ms-word”;
回答。写(“”);
回答。写(“”);
回答。写(“”);
回答。写(“”);
回答。写(“”);
回答。写(“”);
回答。写(“”);
回答.写(“@page section 1{size:595.45pt 841.7pt;边距:1.0in 1.25in 1.0in 1.25in;mso页眉边距:5in;mso页脚边距:5in;mso纸张来源:0;}”);
答复.写(“div.Section1{page:Section1;}”);
回答.写(@page section 2{size:841.7pt 595.45pt;mso页面方向:横向;边距:1.25in 1.0in 1.25in 1.0in;mso页眉边距:5in;mso页脚边距:5in;mso纸张来源:0;});
答复.写(“div.Section2{page:Section2;}”);
回答。写(“”);
回答。写(“”);
回答。写(“”);
回答。写(“”);
StringWriter sw=新的StringWriter();
HtmlTextWriter hw=新的HtmlTextWriter(sw);
GridView1.AllowPaging=false;
GridView1.DataSource=会话[“tblConversations”];
GridView1.DataBind();
this.GridView1.Columns[1].Visible=false;
this.GridView1.Columns[2].Visible=false;
this.GridView1.Columns[3].Visible=false;
this.GridView1.Columns[0].Visible=false;
GridView1.渲染控制(hw);
Response.Write(sw.ToString());
回答。写(“”);
回答。写(“”);
回答。写(“”);
Response.Flush();
Response.End();
}