Previous topicNext topic
Help > 页面报表/RDL报表相关 > 报表控件 >
溢出占位符

在页面报表中,有一个矩形占位符控件,用于表示不适合列表、带状列表、矩表 或表数据区域的固定大小的数据。将数据区域链接到 OverflowPlaceHolder 时,此控件从与其链接的数据区域的 FixedSize 中获取其 Size 属性值。

您还可以在报表中放置多个 OverflowPlaceHolder 控件,以便为数据输出创建不同的外观。将数据区域链接到 OverflowPlaceHolder 控件,然后将该 OverflowPlaceHolder 控件链接到另一个 OverflowPlaceHolder 控件。可以通过此过程创建的两种常见布局是:

多页面布局:将数据区域放在报表的第一页上,将 OverflowPlaceHolder 控件放在后续页面上,以创建包含多个页面上溢出数据的布局。
 
注意:如果页面仅包含没有要显示的数据的溢出占位符,则不会呈现空页面。但是,如果页面还包含任何具有静态数据的控件,则页面将呈现。若要跳过呈现页面,请将 GrapeCity.ActiveReports.PageReportModel.Page.ThrowIfPlaceHoldersEmpty 属性设置为 True。

列式报表布局:将数据区域和 OverflowPlaceHolder 放在报表的同一页上,以创建以列格式显示数据的布局,如下图所示。

数据溢出到溢出占位符
可以将溢出数据从一个数据区域绑定到溢出占位符控件,或将溢出占位符控件绑定到报表中的另一个溢出占位符控件。以下步骤将引导您完成此过程:

这些步骤假定您已将页面报表模板添加到项目中,将其连接到数据源并添加了数据集。有关详细信息,请参阅连接到数据源和添加数据集。

将数据区域链接到溢出占位符控件

当数据超出数据区域的固定大小时,可以从数据区域创建链接,以启用数据流入 OverflowPlaceHolder。

在 Visual Studio 工具箱中,在报表的“Page1”选项卡上,将数据区域(如“列表”)拖放到设计图面上,并设置其 FixedSize 属性。
如果数据超出数据区域的固定大小,请从 Visual Studio 工具箱的报表的第 2 页选项卡上,将 OverflowPlaceHolder 控件(默认情况下为 OverflowPlaceHolder1)拖放到设计图面上。
在 Page1 设计图面上,选择上面放置的数据区域,然后转到“属性”窗口。
在“属性”窗口中,转到“GrapeCity.ActiveReports.PageReportModel.DataRegion.OverflowName”属性,然后从下拉列表中选择之前添加的 OverflowPlaceHolder 控件的名称。

下图显示了列表数据区域 (List1) 的“属性”窗口,其中在 OverflowName 属性中设置了 OverflowPlaceHolder1。

List1 数据区域的属性窗口

提示:根据您的布局要求,可以将 OverflowPlaceHolder 控件放在与数据区域相同的页面选项卡上,也可以放在不同的页面选项卡上。
将一个溢出占位符控件链接到另一个溢出占位符控件

您可以放置其他 OverflowPlaceHolder 控件,以显示流出第一个 OverflowPlaceHolder 控件之外的数据。

从 Visual Studio 工具箱中,将另一个 OverflowPlaceHolder 控件(如 OverflowPlaceHolder2)拖放到设计图面上。
在设计器中,选择包含溢出数据的 OverflowPlaceHolder1 控件,然后转到属性窗口。
在“属性”窗口中,转到“溢出名称”属性,然后选择上面放置的新 OverflowPlaceHolder 控件的名称。例如,在 OverflowPlaceHolder1 中,将 OverflowName 属性设置为 OverflowPlaceHolder2。

下图显示了溢出占位符 1 的属性窗口,其中在 OverflowName 属性中设置了溢出占位符 2。


溢出占位符1的属性窗口

谨慎:在具有多个 OverflowPlaceHolder 控件的报表中,将 OverflowPlaceHolder 控件链接到其各自的数据区域和其他 OverflowPlaceHolder 控件,以便溢出链不会中断。