畅想博客

thinkalways,you will get more-永远不要停止思考的脚步关注我:

« 关于Notepad++配置和一些功能介绍一个实现无刷新文件上传的思路 »

C#批量分页预览的报表设计

做报表时应该会比较常遇到一个问题,就是批量打印。每次要打印一堆的东西,比如博主不久前做的一个学生证打印程序,新生入校就得打印学生证,这个不像遗失补办,只是少个别同学要打,而是一批,你我们学校大一好像是有一万多人,如果一个一个打印,不把人累死。博主在前面的文章中提到一个不预览打印,但是一般情况下比如要核对下信息呀什么的,就得先预览下,本文主要也是讲这个批量预览是怎么做的。

先来,一个效果图,这里博主以自己班为例,我班上 31个人。这里就有31条记录了。

那这个是怎么做的呢,这里就不一步步道来了,主要讲下这个关键的地方,就是我一直搞了好久才搞明白的地方。。。就是这个报表的设计,开始按照老师教的,我是这么做的

这里全是用的Textbox来布局和规范内容,但是在打印时,我已经确认数据集里有很多条记录,可是,在预览时,不管怎么弄,就只能出一条记录,开始很纳闷的一直检查是不是数据集错了,发现不是,又检查是不是程序错了,用好多个方法把程序改来改去,最后都不顶用。百度来百度去,也说的模模糊糊的,讲解的也不清不楚的,不过还是在一个满是繁体的网站上,稍微有点相关,就是我发现他有两页,那片文章讲的是分组,这才找准了方向。

没错,这个分页的关键就是分组,具体怎么操作呢,且听我细细道来。

一、新建一个报表,这里取名为test_Report1.rdlc

二、建好报表后,打开,拖一个表到文件中,把表头行删除。然后调好行例,把布局调好。这里为了演示,就只弄个两行两例。

先预览下效果,比较难看,一堆东西堆到一起了。

这里有两页,是吧,总比那个总是只有一页好,如说这里用这个表,还是没有问题。

三、分组,主要就是在这步了,在页面视图中有下页的图示。

在行组下面详细信息处,单击鼠标右键,点击组属性,会弹出一个页面。

组表达式,点击添加,先择分组方式,这个分组依据一般要为单一值为标准,比如我学生分组,我以学号为分组依据,则每页即出现一个学生信息。如果一页要出现几个学生信息,就需要用函数,编写一个规则。

再转到分页符项,勾选在组的各实例之间,点击确定,这个报表就设计好了。我们来预览一下。一页一条记录,一个有31页。是不是这就搞定了,是吧??

 

这里讲的是比较简单的分页,很多时候,光有一个表,并不能满足你的需求。比如说其他的,如图片呀什么的,目前为止我测试,只有这个表能实现分页功能,如果你还需要其他的东西,只能建一个表,哪怕你这个表只有一行一例也行,把表分组,然后把你要添加的东西,比如文本框,图像,图表等等拖到表里面去。

嗯,差不多分页的主要内容,反正我搞了好久没搞懂的就是这个,我能找到的方法就只有这个。不懂的留言,有其他方法的也希望不吝赐教。




转载本站原创文章请注明作者和出处 畅想网-畅想博客



更多

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Copyright © 2012 by thinkalways.net 一个热爱网络热爱编程的web编程初学者,多多指教,互相学习,QQ联系