C# 在导出到Word文档期间尝试修改gridview布局
我试图在代码中添加一个函数,将Gridview导出到word文档。以下是我用于导出Gridview的代码供参考:C# 在导出到Word文档期间尝试修改gridview布局,c#,asp.net,C#,Asp.net,我试图在代码中添加一个函数,将Gridview导出到word文档。以下是我用于导出Gridview的代码供参考: Response.AddHeader("content-disposition", "attachment;filename=Export.doc"); Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.ContentType = "applicatio
Response.AddHeader("content-disposition", "attachment;filename=Export.doc");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "application/vnd.word";
StringWriter stringWrite = new StringWriter();
HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
HtmlForm frm = new HtmlForm();
GridView1.Parent.Controls.Add(frm);
frm.Attributes["runat"] = "server";
frm.Controls.Add(GridView1);
frm.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();
作为记录,我没有写这段代码,所以如果你想知道为什么它是一种特定的方式,我不知道
无论如何,我需要解决此导出中的三个问题:
Response.AddHeader("content-disposition", "attachment;filename=Export.doc");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "application/vnd.word";
StringWriter stringWrite = new StringWriter();
HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
HtmlForm frm = new HtmlForm();
/*--------------*/
GridView1.Columns(0).Visible = false; //HIDE EDIT
GridView1.Columns(1).Visible = false; //HIDE DELETE
GridView1.AllowSorting = false; //Disable Sorting
GridView1.DataBind();
/*--------------*/
GridView1.Parent.Controls.Add(frm);
frm.Attributes["runat"] = "server";
frm.Controls.Add(GridView1);
frm.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();
我不太清楚你在问题1中所说的是什么,但也许可以尝试禁用列上的换行<代码>properteColumn.Wrap=false代码>对于第一个问题,您是在谈论gridview还是word文档中的表格单元格?谢谢Nikita,该解决方案效果很好(尽管我不需要在这里进行数据绑定,因为gridview已绑定到其他地方的数据源,但我知道您不知道这一点。)我在问题1中寻找的是一种调整列宽度的方法,即使是单独调整。我尝试了“GridView1.Columns[1].ItemStyle.Width=200;”,但没有更改。gridview是动态创建的还是在aspx中创建的?您是在尝试更改网站gridview列本身的宽度,还是仅在导出时更改?仅在导出时更改;Gridview在aspx代码中,我将列宽设置为我想要的。这正是我遇到的问题。请尝试在
GridView1.AllowSorting=false之后设置宽度代码>并包括GridView1.DataBind()代码>用于导出