ASP.NET中如何动态生成二维表格

焚寂 2011-04-27 09:45:13
动态生成一张类似下图的表格。



其中:市南区、市北区和人口数、人均收入这些项也都是动态的。
好像用Repeater可以实现,但就是不知道该怎么写,恳请高手指点一二
...全文
297 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
焚寂 2011-05-04
  • 打赏
  • 举报
回复
用reportviewer解决了,多谢了各位
yellowegg 2011-04-28
  • 打赏
  • 举报
回复
这种需求不复杂的,就后台拼HTML串吧
焚寂 2011-04-28
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 wubing1111 的回复:]

自己写一个DataTable然后绑定到GridView上就可以了。
[/Quote]

貌似GridView的列需要预先定义的吧,如果你说的是动态生成列,那能给份示例代码参考参考?
ycproc 2011-04-27
  • 打赏
  • 举报
回复
不循环怎么了 递归啊
ringobob 2011-04-27
  • 打赏
  • 举报
回复
如果觉得写成3个view,然后再用sql union起来比较耗性能。
可以写一段存储过程,在存储过程里面实现。

一般来说需要报表的系统大多数据量很大。这时候用存储过程可以节省前台和后台数据库的runtime时间,也可以节省前台传送给后台的数据流长度。
ringobob 2011-04-27
  • 打赏
  • 举报
回复
我做过类似的。你这是做报表统计吧?
能不能把数据源表的结构说明下?
你可以试着先分别做成3个view,各自统计人口数、人口收入,人均福利。
然后union起来
yue547283947 2011-04-27
  • 打赏
  • 举报
回复
cell = new TableCell();
row = new TableRow();
for(int i=0;i<rows;i++)
{
for(j=0;j<cells;j++)
{
cell = new TableCell();
row = new TableRow();
if(i==0 && j>0)
{
cell.Text=“第一行的内容”;
}
if(j==0&&i>0)
{
第一列
}
else

90万,75万。。。。

row.Cells.Add(cell);
}
}
table//页面上的table//.Rows.Add(row);

完全手写,希望能给你帮助。
yue547283947 2011-04-27
  • 打赏
  • 举报
回复
for(int i=0;i<rows;i++)
{
for(j=0;j<cells;j++)
{
if(i==0 && j>0)
{
第一行的内容
}
if(j==0&&i>0)
{
第一列
}
else

90万,75万。。。。

}
}
rows 市南区 市北区 。。。总数量
cells 人口。。。。。总数量
子夜__ 2011-04-27
  • 打赏
  • 举报
回复
动态构建DataTable.
se7en 2011-04-27
  • 打赏
  • 举报
回复
用xml就可以了 ,支持子节点
焚寂 2011-04-27
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 yenange 的回复:]

行与列均不固定, 那Repeater应该是搞不定了, 因为这已经是个二重循环.
[/Quote]

Repeater 不也可以嵌套吗?
焚寂 2011-04-27
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 yenange 的回复:]

引用 5 楼 yenange 的回复:

行与列均不固定, 那Repeater应该是搞不定了, 因为这已经是个二重循环.

你试着直接在页面上二重循环吧, 或者在页面后置文件用二重循环中得到html了, 再赋给前台页面
[/Quote]

二重循环?
有个示例能参考下吗?
happydaily 2011-04-27
  • 打赏
  • 举报
回复
最笨的方法就是JS动态生成table,写得比较累。。用Repeater 你可以把表头的数据绑定成request.quersting,
吉普赛的歌 2011-04-27
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 yenange 的回复:]

行与列均不固定, 那Repeater应该是搞不定了, 因为这已经是个二重循环.
[/Quote]
你试着直接在页面上二重循环吧, 或者在页面后置文件用二重循环中得到html了, 再赋给前台页面
吉普赛的歌 2011-04-27
  • 打赏
  • 举报
回复
行与列均不固定, 那Repeater应该是搞不定了, 因为这已经是个二重循环.
焚寂 2011-04-27
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 liukaizxc 的回复:]

数字是动态的 中文也动态吗? 比如市南区 或者 市中心
[/Quote]

是啊。。是根据用户选择的地区集,然后动态生成这张二维表。
数字,市南区、市北区和人口数、人均收入这些项都是动态的
le616 2011-04-27
  • 打赏
  • 举报
回复
for 循环动态拼接html
liukaizxc 2011-04-27
  • 打赏
  • 举报
回复
数字是动态的 中文也动态吗? 比如市南区 或者 市中心
wubing1111 2011-04-27
  • 打赏
  • 举报
回复
自己写一个DataTable然后绑定到GridView上就可以了。
吉普赛的歌 2011-04-27
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 fengyarongaa 的回复:]

不循环怎么了 递归啊
[/Quote]

厉害, 贴代码出来呀, 无代码无真相……

62,046

社区成员

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

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

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

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