我一直在尝试以编程方式更改报告的纸张尺寸。 目的是使其能够在运行时配置RDLC报告的纸张/页面大小。
正如我在Link上看到的那样。我可以在运行时配置纸张尺寸。
我遵循了它,并设法在运行时更改纸张大小,但是在加载报表时更改了纸张大小。它仍然使用报表属性上指示的PageSize
。
这里有我错过的事情吗?我也尝试使用RefreshReport()
。我误解为PageSize
和PaperSize
一样吗?我没有看到PageSize
下的DefaultPageSettings
属性,因此我认为它们是相同的。
下面的屏幕快照显示了运行时更改的PaperSize
。我已经使用一个消息框查看它是否发生更改。
但是报表仍然使用PageSize
属性下指定的1100高度乘850宽度。
答案 0 :(得分:1)
在报告属性页中设置的纸张大小与在属性 PageSize 相同>报告窗口。它确定报告的打印页面大小。
要在运行时设置值:
Dim pageSettings = New Printing.PageSettings()
pageSettings.PaperSize = New Printing.PaperSize("Custom", 400, 400)
Me.ReportViewer1.SetPageSettings(pageSettings)
查看影响:
注意
通过更改InteractiveSize.Height
,您可以在查看器的交互模式(默认视图)下更改页面大小。例如,通过将高度设置为0,报表的所有项目将显示在单个页面中。或将其设置为2英寸,例如,每页将显示适合2英寸的行数。您无法在运行时更改它。
通过更改页面大小,您将更改打印布局中报告的页面大小。您可以在运行时和设计时更改它。
通过更改报告正文宽度,无论纸张大小如何,都将更改报告正文所需的空间量。例如,如果将页面宽度设置为小于报表正文宽度,则打印时将出现分页符,以打印报表正文的右侧。您无法在运行时更改它。