winform 报表

andylauhai 2009-11-27 03:39:14
我现在想做个报表,报表的左面是颗树,右面是树的每个节点对应的数据,请问怎么实现?谢谢!
...全文
386 35 打赏 收藏 转发到动态 举报
写回复
用AI写文章
35 条回复
切换为时间正序
请发表友善的回复…
发表回复
netgrowing 2012-07-19
  • 打赏
  • 举报
回复
会也不会给你说的
andylauhai 2009-12-04
  • 打赏
  • 举报
回复
看来真的没有人会吗?!
andylauhai 2009-12-04
  • 打赏
  • 举报
回复
看来真的没有人会吗?!
andylauhai 2009-12-03
  • 打赏
  • 举报
回复
看来真的没有人会吗?!
andylauhai 2009-12-02
  • 打赏
  • 举报
回复
看来真的没有人会吗?!
a325061100 2009-12-02
  • 打赏
  • 举报
回复
要打印树的话 你可以在报表头部上设计. 水晶报表的导航树只提供看不提供打印.
andylauhai 2009-12-01
  • 打赏
  • 举报
回复
看来真的没有人会吗?!
andylauhai 2009-12-01
  • 打赏
  • 举报
回复
[Quote=引用 28 楼 a325061100 的回复:]
  用水晶报表很容易啊。 只要你添加一个分组就可以了出现左边的树了。

我上个月做了个,不知道是不是你想要的那样的。  这不支持贴图不然贴上来给你看下。

 
[/Quote]

用分组的话,一是左面那颗树不知道能不能与右面的数据一起打印?二是用分组的话,得点一个左面的节点,出一个右面的数据,我想要的是左面的树与右面的数据都在一起打印,而且不用点左面的树节点,右面的数据都能够与左面的数据一起刷出来?!
a325061100 2009-12-01
  • 打赏
  • 举报
回复
用水晶报表很容易啊。 只要你添加一个分组就可以了出现左边的树了。

我上个月做了个,不知道是不是你想要的那样的。 这不支持贴图不然贴上来给你看下。

a325061100 2009-12-01
  • 打赏
  • 举报
回复
我实现了。 联系我。
特别 2009-12-01
  • 打赏
  • 举报
回复
要看花多长时间了,如果三五分钟能回答的就回答了
要不然谁花很长时间来解决啊

偏要这样的话,自己写个控件吧
要不然就用Treeview结合datagridview来解决
至于打印,可以看看
控件的 DrawToBitmap方法

[Quote=引用 21 楼 andylauhai 的回复:]
看来真的没有人会吗?!
[/Quote]
andylauhai 2009-12-01
  • 打赏
  • 举报
回复
看来真的没有人会吗?!
ITDC_YiWang 2009-11-30
  • 打赏
  • 举报
回复
树里面的数据可以用递归从数据库动态绑定,然后通过TREEVIEW里面的NODECHAGE事件获取TREEVIEW的NODE节点的值 ,通过这个值去加载右边的数据不可以吗?
kinglshadow 2009-11-30
  • 打赏
  • 举报
回复
进来学习下
andylauhai 2009-11-30
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 andylauhai 的回复:]
引用 16 楼 babyt 的回复:
楼主最好简单做个示意图。呵呵。

一般的组树和数据,在打印后的视觉效果上是对应不起来的。
除非是组名与数据间隔夹杂。

[/Quote]


就类似这个图,左面是颗树,右面是每个节点对应的数据!
andylauhai 2009-11-30
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 babyt 的回复:]
楼主最好简单做个示意图。呵呵。

一般的组树和数据,在打印后的视觉效果上是对应不起来的。
除非是组名与数据间隔夹杂。
[/Quote]

阿泰 2009-11-30
  • 打赏
  • 举报
回复
楼主最好简单做个示意图。呵呵。

一般的组树和数据,在打印后的视觉效果上是对应不起来的。
除非是组名与数据间隔夹杂。
andylauhai 2009-11-30
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 babyt 的回复:]
引用 8 楼 andylauhai 的回复:
用分组的话,一是左面那颗树不知道能不能与右面的数据一起打印?二是用分组的话,得点一个左面的节点,出一个右面的数据,我想要的是左面的树与右面的数据都在一起打印,而且不用点左面的树节点,右面的数据都能够与左面的数据一起刷出来?!


1:水晶报表的组树应该是不打印的,这个我倒没注意(晕)。因为组树是viewer的一部分,而不是报表的一部分。
2:水晶报表分组后,默认是数据全部出来(不用点组树,当然,这个跟设计模板页又关系,也可以做到开始全不显示,点钟后再显示)。点中组名后显示对应的数据部分。

我觉得你这个需求有点不完善的地方,就是数据较多时的分页。
假设可以打印组树,但是一般情况组树占用的页数肯定会比数据页少
一来会导致后面的页面左侧会出现空白(组树已经打印完毕),二来因为打印后,组树已经失去了动的动能。
视觉效果上反而可能带来歧义。
[/Quote]


左面的树与右面的数据是对应的,不会比数据页少!
阿泰 2009-11-30
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 andylauhai 的回复:]
用分组的话,一是左面那颗树不知道能不能与右面的数据一起打印?二是用分组的话,得点一个左面的节点,出一个右面的数据,我想要的是左面的树与右面的数据都在一起打印,而且不用点左面的树节点,右面的数据都能够与左面的数据一起刷出来?!
[/Quote]

1:水晶报表的组树应该是不打印的,这个我倒没注意(晕)。因为组树是viewer的一部分,而不是报表的一部分。
2:水晶报表分组后,默认是数据全部出来(不用点组树,当然,这个跟设计模板页又关系,也可以做到开始全不显示,点钟后再显示)。点中组名后显示对应的数据部分。

我觉得你这个需求有点不完善的地方,就是数据较多时的分页。
假设可以打印组树,但是一般情况组树占用的页数肯定会比数据页少
一来会导致后面的页面左侧会出现空白(组树已经打印完毕),二来因为打印后,组树已经失去了动的动能。
视觉效果上反而可能带来歧义。
freezing1207 2009-11-30
  • 打赏
  • 举报
回复
VS2008也可以
加载更多回复(15)

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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