Rdlc报表出现空白页解决方法
在使用RDLC报表时,碰到这种情况:当只有一页数据时,报表却显示两页,第二页除了报表头之外数据为空。然后,当有多页数据时,最后一页为空。
RDLC报表设计好后,在ReportViewer预览报表时,页数都正常;但在切换为整页模式时,常造成多了不少空白页出来。第一时间觉得不可思议,在ReportViewer看来正常,怎可能在整页预览时,格式会跑掉?如果在整页预览时格式跑掉,那在打印时也一定是这样的情形。ReportViewer会将RDLC所设计的报表文件显示其中,但和实际纸张打印时,并不是如此,因此时就要检查RDLC报表本身的大小。
1.先至Report.rdlc报表设计的页面,选择菜单上的[报表]->[报表属性],在[配置]的页签中记录着输出报表的纸张大小,预设应为A4直式的纸张(页宽:21cm,页高:29.7cm,左右上下边界:2.5cm),记下这些值。
2.检查Report.rdlc的属性窗口中[主体]属性的Size值,它的宽度Width要小于[报表属性]中的(页宽)– (左边界)– (右边界)。
3.调整后再整页预览看看,多调几次应就不会再产生太多的空白页了。
这个问题很奇怪,网上有很多解决方案,以下的方法可以解决此问题。
方法一:设置报表的属性 ConsumeConteinerWhitespace = True
第一种方法具体操作:
1,选中要修改的报表按F4 ,将下拉列表中的【主体】换选中【报表】
2,选择【报表】后就出现了ConsumeConteinerWhitespace 的属性,默认是false,改成True即可解决空白行的问题
方法二:在Row Group 中设置 Keep Together = False, 进入Advance Mode,设置所有Static成员的Keep Together = False
对于一些报表,调整Body的宽度和高度,直到和Report的宽度和高度差不多就行了。操作就是将body的边框拖到和Report平齐。
这么说来,这就是个非常简单的问题,是由于Body的宽度太宽或高度太高引起的。
附件截图设置RDLC报表属性