RDLC-Report中的空白页面

HCL*_*HCL 42 reportviewer rdlc

我有一个rdlc报告,其中有一个tablix,没有别的.Tablix在水平方向上展开以显示天数,在垂直方向上展示组.

Tablix按预期工作,只要我将内容区域的宽度设置为Tablix的宽度即可.

如果我将内容大小扩展到其固定大小(大约是PageWidth-PageBorders)并运行报表,则每隔一页都是一个空页.
但是Tablix只使用一页.每个奇数页面都是空的.Tablix似乎将其水平扩展添加到当前定义的内容宽度,然后计算溢出.

reportviewer版本为3(2010 Redistributable)

有人有这种奇怪行为的解决方案吗?

更新

如果我将报告导出到Excel,我会看到Tablix的右侧站点上有一列与生成的日期一样长.它似乎真的是一个错误或功能,我没有看到如何停用.
我也尝试从表中创建相同的构造,它导致了同样的问题,这并不令人惊讶,因为该表在内部也是一个Tablix.

更新1

如果我将报告的属性"ConsumeContainerWhitespace"设置为true,则上述测试版本可以正常工作.但是,如果我将其他元素放在"白色"区域中,效果就会重新出现.

HCL*_*HCL 41

设置页面属性ConsumeContainerWhitespace=true(在属性对话框中,F4)有所帮助.然而,无论如何制作报告都是正确的.在开始时它只有在我将所有额外内容添加到页面页眉和页脚时才起作用.但这是不可接受的.经过大量的尝试,我成功地按照需要制作了报告.但是我并不真正理解背后的逻辑.

我记得我已经做过这样的报告(在两个方向上,水平和垂直一起增长)没有任何问题,我不知道这个报告有什么区别.对于这份报告,它确实可以重现ConsumeContainerWhitespace- -property有所不同.但是为什么我从未发生类似的报道,我不知道.另外我不知道为什么在布局引擎接受我的设计之前我先绕圈.

  • @M_Mogharrabi:点击灰色部分的报告外部区域."属性"窗格将显示"报告".在那里你可以找到"ConsumeContainerWhiteSpace"属性. (7认同)
  • 嗨HCL,我有同样的问题,但我找不到这个"ConsumeContainerWhitespace"属性为我的reportviewer.where我应该找到它吗?(我正在使用vs 2010) (6认同)

小智 14

解决此问题的最佳方法是,例如A4页面 Width=21 cmHeight=29.7 cm

现在保证金Left=1 cm,Right=1 cm所以你有一个19厘米的可用宽度.

当您了解此基本计算意味着您的问题已解决.您可以通过右键单击report property => pagesetup来设置报告页面大小属性.


小智 9

检查"主体"尺寸,尝试使其与实际纸张尺寸一样宽和高,但仅减少边距.

  • 这对我有用。我有一份工作正常的报告,然后在添加一个部分后,它开始在每个打印页面之间喷出空白(仅限页眉/页脚)页面。虽然页面大小或边距没有明显问题,但我凭直觉行事,稍微减少了边距,例如每边减少 0.05 英寸,问题就消失了。 (2认同)

rob*_*ley 9

我正在处理一份打印额外空白页的 RDLC 报告。我尝试了所有常用的技巧,以及我能想到的所有方法,直到我意识到问题是由报告右边距区域中的额外可见空白引起的。报告中的一个对象(“矩形”)太宽一两个像素,这阻止了调整报告可见空间的大小。一旦我删除了所有额外的宽度,报告就开始以预期的页数打印。

Visual Studio 2017 (15.7.5) + Microsoft Rdlc 报表设计器扩展 (v14.2)

在此处输入图片说明


Lin*_*ang 7

页面设计存在混淆.开发人员会认为正在设计的报告是WYSIWYG,但实际上并非如此!Microsoft reportviewer将把您设计的页面作为内容!并附加在页面外部定义的边距,结果表明您的页面永远不适合一页!

因此,在设计新报表时,请关注内容区域,客户区域(包括页眉和页脚),并允许将边距附加到外边框上.


小智 7

解决方案很简单ConsumeContainerWhiteSpace=True(您可以在属性窗口中找到"报告"),在主菜单/报告/报告属性中将纸张大小设置为"A4",然后检查纸张尺寸是否大于body + header + footer + margins.


Chr*_*nel 7

  1. 前往房产F4
  2. 选择身体
  3. 将宽度和高度写入1cm

Visual Studio 将覆盖尽可能小的 Body

完毕。


Iba*_*bad 6

在我使用报告主体的高度宽度之前,我遇到了同样的问题.:)


The*_*hod 6

我遇到了类似的问题,我是这样解决的

例如对于宽度,应满足以下等式

PageSize >= LeftMargin +  BodySize + RightMargin 
Run Code Online (Sandbox Code Playgroud)

在哪里可以找到 BodySize?

F4 ->在报告中的某处点击点击->你会发现 body 属性(查看size属性,取宽度值)

在哪里可以找到报告 PageSize?

单击报告外的某处,->您将找到报告属性(查看PageSize(取其宽度值)和marginsLeft, right, ..),取左右边距值)

从这些属性中获取值,并检查它们是否满足

PageSize >= LeftMargin +  BodySize + RightMargin 
Run Code Online (Sandbox Code Playgroud)


fir*_*fly 5

请在窗口顶部的对象选择器中选择“报告”。如果还存在同样的问题,则使ConsumeContainerWhiteSpace = true,则rdlc报告大小应小于报告正文。


cha*_*hen 5

我最近遇到了这个问题.

根本原因可能是:
您的报告正文有一些空白的上行报告页脚或其他地方.
解决方法是:
1,单击报表正文
2,转到属性窗口,你会看到正文大小属性
3,检查正文大小,你可能会发现一个奇怪的数字,如9.6654in,1.5625in.
这意味着你的页脚有一些空白,修改高度或宽度大小,直到你看不到空白.