多栏报表 是以多个列或行 (取决于当前的多栏设置) 呈现数据的报表。 这种报表是有用的,例如,当每个细节带区都只显示少量数据、并且需要在一列的右侧打印下一个细节带区的外观时,这样就能充分利用整个页面宽度。 此外,当创建有相同内容的 卡片或邮寄地址签、并且需要在许多报表页面上打印大量相同尺寸的卡片时,多栏报表也是有用的。
由于多栏布局主要影响报表的细节带区,因此可以通过 Detail 带区的 DetailBand.MultiColumn 属性来指定多栏模式。 要启用多栏模式,则把 MultiColumn.Mode 属性设置为除去 None 之外的其他取值。
使用 XtraReports 来定义多栏布局的选项有两种:
-
栏数固定,栏宽度相同并且被自动计算。
为此,应该把 MultiColumn.Mode 属性设置为 MultiColumnMode.UseColumnCount,并把 MultiColumn.ColumnCount 属性设置为所需的栏数。 -
自动计算栏数,所有栏的宽度都是相同的固定宽度。
为此,应该把 MultiColumn.Mode 属性设置为 MultiColumnMode.UseColumnWidth,并且把 MultiColumn.ColumnWidth 属性设置为所需的栏宽度。
所形成的多栏布局也取决 MultiColumn.ColumnSpacing 属性的取值。 该值指定栏间距,用于需要在设计时刻调整栏的布局时,如下图所示。
因此,MultiColumn.ColumnSpacing 属性是辅助性的,仅用作在设计时刻指明栏间距。 如果把一些控件放置在由 MultiColumn.ColumnSpacing 属性指定的区域中,那么这些控件将被以标准的方式打印,就如同它们被放置在由 MultiColumn.ColumnWidth 属性指定的区域中那样。
当启用了多栏模式时,细节带区就可以以两种方式之一被重复: 向下然后横跨(列),或者横跨然后向下(行)。 通过 MultiColumn.Direction 属性指定此选项。
在非绑定模式中创建多栏报表时 (例如在报表中打印固定数目的标签或卡片),则使用 XtraReportBase.DetailPrintCount 属性来指定每行应被重复的次数。