如何使 table 将页脚推到 Microsoft Report 中的页尾

How to make the table pushing the footer to the end of page in Microsoft Report

我正在开发一个 Reportviewer 并希望将 table 扩展到页面事件的末尾,它几乎没有或没有记录。以下是 Visual Studio 2013 – VB.NET 项目中的 table 设计。

table 有五列:项目、描述、数量、单价和金额。如果 table 正文有更多行,则它必须扩展到许多页。下面是我的报告的printable版图片,只有三个记录:

问题是如果记录很少,table 无法将页脚推到页尾。但我希望它像这样将页脚推到页面末尾:

在其他情况下,如果 table 中没有行,它也应该像这样将页脚推到末页:

我需要帮助来格式化 table 以将页脚推到我报告的页尾。

经过很多天,我问了很多人,做了很多研究。我已经提出了我自己的解决方案,那就是为 Tablix 创建一个页脚行来像报告页脚一样弥补它,而不是强制 Tablix 将报告页脚推到页面末尾。

实现它的步骤如下:

  • 在 Tablix 的行组下插入一个新行。我们将实施它 成为页脚行。

  • 单击选择页脚行的第一个单元格(您想要的行 成为页脚行——它应该放在行组下)

  • 从“行组”面板(您可以右键单击报表以显示“行组”面板),单击页脚行的静态单元格。

  • 打开属性,并设置以下属性:

    保持在一起:正确

    KeepWithGroup: 之后

    RepeatOnNewPage: True

设置完成后,该行将成为Tablix的页脚行,可以像页眉行一样在每一页重复。

在每页重复一个页脚行后,您应该向页脚行添加一个矩形,然后将报表页脚中的所有元素复制到该矩形中。

通过这种方式,您可以解决tablix 和报表页脚之间的空白问题。我们将报表页脚的元素设置为来自 tablix 的页脚行的一部分。并且它会像报告页脚一样在每一页重复。

注:以防万一,报表没有行。您应该添加许多空行以使其成为整页(这个技巧应该在您后面的代码中完成)。