有关GridView中的问题,速结!(不好意思,只剩下这么一点分了 )

yzh0313 2007-09-20 09:53:08
问题一:怎样将Gridview中的数据导出为EXCEL。由于GRIDVIEW采用了分页功能,目前只能实现当前页的导出,怎样才能将查询出来的数据全部导出为EXCEL。

问题二:怎样才能实现Gridview中数据列的对齐方式。也就是在一个Gridview中有字符型数据和数字型数据。我怎样才能实现让字符型数据左对齐,而让数字型数据右对齐。或者说让具体某一列实现某一种对齐方式(左对齐,居中对齐,右对齐)。还有就是Gridview中怎样让一数值型数据格式化,比如:一个数据450.142000000000,我怎样才能去掉后面那几个0得到450.142或者450.1420。


由于GRIDVIEW中的数据都是动态的,没有将GRIDVIEW绑定,从而无法通过设置其列的相关属性来实现上面功能。不知还有没有别的动态方法?

...全文
454 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangjia21_2007 2007-09-20
  • 打赏
  • 举报
回复
可以呀 我也初学 咱们一起研究,帮你顶吧
yzh0313 2007-09-20
  • 打赏
  • 举报
回复
自己顶一下
yzh0313 2007-09-20
  • 打赏
  • 举报
回复
问题一已解决,大虾们帮我解决一下问题二,谢谢!!!
ReyZhang 2007-09-20
  • 打赏
  • 举报
回复
路过.
caowenkai 2007-09-20
  • 打赏
  • 举报
回复
ds = new DataSet();
DataTable dt;
ds = 数据源;
dt = ds.Tables["XXXX"];
dt.Columns["XXXX"].ColumnName = "XXXX";
dt.Columns["XXXX"].ColumnName = "XXXX";
dt.Columns["XXXX"].ColumnName = "XXXX";
dt.Columns["XXXX"].ColumnName = "XXXX";
StringWriter sw = new StringWriter();
GridView dv = new GridView();
dv.DataSource = dt;
dv.DataBind();
dv.AllowPaging = false;
Response.ClearContent();
Response.Charset = "GB2312";
Response.AppendHeader("Content-Disposition", "attachment;filename=MyExcelFile.xls");
// 如果设置为 GetEncoding("GB2312");导出的文件将会出现乱码!!!
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.ContentType = "application/excel";

HtmlTextWriter htw = new HtmlTextWriter(sw);

dv.RenderControl(htw);

Response.Write(sw.ToString());
Response.End();
yzh0313 2007-09-20
  • 打赏
  • 举报
回复
yangjia21_2007(年薪一万!)好啊,其实这个问题,我上次提过,你就这样回答我的,只不过这次是动态的,我能加你为好友吗?
yangjia21_2007 2007-09-20
  • 打赏
  • 举报
回复
sorry 没看到是动态导出的,问题二帮不上忙 没那么弄过
yangjia21_2007 2007-09-20
  • 打赏
  • 举报
回复
问题二
<asp:BoundField DataField="emolument" HtmlEncode=false DataFormatString={0:#0.00} HeaderText="emolument" />
这样绑定就是2位小数,类似的 HtmlEncode=false DataFormatString="{0:yyyy年MM月dd日}"
可是改变时间格式
ItemStyle-HorizontalAlign ItemStyle-VerticalAlign
在相应的列中用上面的两个属性就可以设置对齐方式

问题一
我是导出时 GridView1.AllowPaging = false; 把分页取消了 然后重帮一下数据才导出的
或者用dataset直接导出成excel 但是我觉得没有gridview导出到excle好看
heqi915 2007-09-20
  • 打赏
  • 举报
回复
LZ,关注一下
morixing 2007-09-20
  • 打赏
  • 举报
回复
导出全部数据很简单的,直接从DataSet里面导就是所有的而不是分页后的了。
数据动态的可以在数据绑定以后设置列的格式(在后台代码中获取每一列来设置其样式就行了,只要不是模板列我想你很容易就知道怎么设置的了。)数据格式化只要ToString("0.00")就可以,你可以在数据填充后取出那一个列的值更改。
yzh0313 2007-09-20
  • 打赏
  • 举报
回复
问题一已经解决了, 谁帮我解决一下问题二啊,谢谢!!!
dcxa_ni 2007-09-20
  • 打赏
  • 举报
回复
问题1: 直接导出查询结果,select × from table

62,254

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧