在报告页脚之前消除组页脚分页符

时间:2009-07-17 17:35:05

标签: reporting devexpress xtrareport

我有一个包含页眉和页脚的报告。根据数据,应该只有两组。我将Group Footer设置为在它之后有一个分页符。我不希望最后一个组在报表页脚之前创建分页符(如果我这样做,我会设置报表页脚在它之前有一个分页符。)。我从未遇到过其他报道编写者的这个问题。

报告打印输出的示例而非设计。我的报告只有一个组标题和一个组页脚:

报告标题

组数据集1标题 详情 详情 详情 组数据集1页脚

组数据集2标题 详情 详情 GroupData设置2页脚   !我不想要这个!

报告页脚(单独停留在最后一页)

张贴在他们的董事会:http://community.devexpress.com/forums/t/78705.aspx

1 个答案:

答案 0 :(得分:5)

这确定您何时到达报告的末尾并停止组页脚中断页面。它假设您的组页脚的PageBreak属性已设置为PageBreak.AfterBand。

private void Report_DataSourceRowChanged(object sender, DataSourceRowEventArgs e) {
    if (e.CurrentRow == this.RowCount - 1)
        GroupFooter.PageBreak = PageBreak.None;
}

或者,您可以将组页眉和页脚的PageBreak属性设置为PageBreak.None。然后,当您打印第一个组时,在每个组标题带之前将其设置为分页符,如下所示:

private void GroupFooter_BeforePrint(object sender, DataSourceRowEventArgs e) {
    if (GroupHeader.PageBreak == PageBreak.None)
        GroupHeader.PageBreak = PageBreak.BeforeBand;
}

由您决定选择哪种方法。我个人更喜欢第二个。即使我随意选择GroupFooter_BeforePrint方法进行订阅并进行此更改,我仍然会比依靠行数确定何时到达报告末尾更为自在。