EPR类企业管理系统

在我们现有系统基础上或全新开发,提供定制服务
为您的企业高效快速实施ERP,WMS,MES,CRM管理系统
全面管控物料仓库、销售业务、采购业务、仓库业务
生产过程、质量检验、组织架构、业务报表


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

如何:使用自定义报告预览表单

本示例演示如何通过处理ReportServiceController.CustomShowPreview事件来显示自定义报告预览表单。

注意

移动应用程序不支持报告预览机制,因此本主题中描述的方法无法在移动平台中实现。

在本主题中,假定您有一个使用Reports V2 Module的XAF应用程序,并且已经创建了一个或多个报告(请参阅Reports V2 Module Overview)。

使用以下Controller在自定义窗口(此示例中为CustomPreviewForm表单)中显示报告预览。

using DevExpress.XtraReports.UI;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.ReportsV2;
// ...
public class CustomPreviewController : ViewController {
    private ReportServiceController reportServiceController;
    protected override void OnActivated() {
        base.OnActivated();
        reportServiceController = Frame.GetController<ReportServiceController>();
        if (reportServiceController != null) {
            reportServiceController.CustomShowPreview  = reportServiceController_CustomShowPreview;
        }
    }
    void reportServiceController_CustomShowPreview(object sender, CustomShowPreviewEventArgs e) {
        IReportContainer reportContainer = 
            ReportDataProvider.ReportsStorage.GetReportContainerByHandle(e.ReportContainerHandle);
        reportServiceController.SetupBeforePrint(reportContainer.Report, 
            e.ParametersObject, e.Criteria, e.CanApplyCriteria, e.SortProperty, e.CanApplySortProperty);
        CustomPreviewForm form = new CustomPreviewForm();
        form.ShowReport(reportContainer.Report);
        e.Handled = true;
    }
    protected override void OnDeactivated() {
        if (reportServiceController != null) {
            reportServiceController.CustomShowPreview -= reportServiceController_CustomShowPreview;
        }
    }
}

所述CustomPreviewForm如以下描述的教程形式可以被设计:

CustomPreviewForm准备就绪后,添加ShowReport方法给它。

public void ShowReport(XtraReport report){
    documentViewer1.DocumentSource = report;
    report.CreateDocument();
    Show();
}

在此示例中,documentViewer1是添加到当前表单的DocumentViewer组件。

提示

请参阅XtraReports文档中的“ API和自定义”部分,以了解有关报表预览自定义的更多信息。

转载保留此链接,注明出处