本主题阐述了直接在“打印预览”中操作报表文档的多种方式,并说明了如何把这种功能转化给最终用户。 列举了可用于在“打印预览”中检测报表各个元素 (带区或控件) 上的活动的事件,并演示了如何获得报表元素的内容: 根据该数据重新对报表排序,或者把数据传递到应用程序中的另一个窗口。
本主题由下列小节组成。
使用 XtraReports,可以执行直接在 打印预览 中执行多种操作,当某个特殊事件发生时。
尽管上面列出的事件是应用于 XRControl 类的,但是,类似的一组事件对 Band、SubreportBase、XRPageBreak 和 XRPivotGrid 类也是可用的。
在这些事件中,实际上可以对报表文档执行任何所需的操作。 然后可以把这些操作转化给最终用户。
大部分基本任务是,当控件被显示在“打印预览”中时,检索控件存储的某个取值。 对于这些任务,现有方式的特殊之处是,在完成报表生成之后,报表元素 (Band 和 XRControl 类的实例) 被作为 Brick 类的实例呈现在“打印预览”中。 这样就涉及到一种特殊的获取其内容的方式。 要学习更多相关内容,请参阅 如何: 在预览期间单击标签时获取其文本。 还有更详细的信息,请参阅 XtraPrinting 帮助系统中的Bricks 文档。
基于采集到的数据,可以允许最终用户直接在“打印预览”中对报表分组和排序,现在通过操作 bricks 来达成此目标,而不是通过以常见的方式重新生成报表。 要获得这种方式的相关细节,请参阅 如何: 在预览期间对报表排序。
要求用户后续交互的任务的其他常见例子,是 drill-down 和 drill-through 报表: 报表最初显示一个总轮廓,当它的元素被单击时,展开 (或在单独的打印预览窗口中调用) 其详细数据。 相应的指南在 如何: 创建 Drill-Down 报表 和 如何: 创建 Drill-Through 报表 主题中可用。
要求“打印预览”交互的任务的相关示例,请参阅下列指南。