Skip to main content

PreviewReportCustomizationService Class

Enables you to customize the current report and assign a CachedReportSourceWeb object when the Report Designer is about to be switched to the Preview tab.

Namespace: DevExpress.XtraReports.Web.ReportDesigner.Services

Assembly: DevExpress.XtraReports.v24.1.Web.dll

NuGet Package: DevExpress.Web.Reporting.Common

Declaration

public class PreviewReportCustomizationService

Remarks

You can create a descendant from the PreviewReportCustomizationService and override the following methods:

  • CustomizeReport - allows you to change the report’s settings when it is about to be previewed. These changes are in effect only in the Preview tab.
  • CreateCachedReportSource - is called after the CustomizeReport method and allows you to assign a CachedReportSourceWeb object to the customized report.

The following example demonstrates how to use this service to change the report’s orientation and assign a new CachedReportSourceWeb instance.

using DevExpress.XtraReports.UI;
using DevExpress.XtraReports.Web;
using DevExpress.XtraReports.Web.ReportDesigner.Services;

public class MyPreviewReportCustomizationService: PreviewReportCustomizationService {
    public override void CustomizeReport(XtraReport report) {
        report.Landscape = true;
    }

    public override CachedReportSourceWeb CreateCachedReportSource(XtraReport report) {
        return new CachedReportSourceWeb(report);
    }
}

Then, register your custom service implementation at the application’s startup.

ASP.NET Web Forms and ASP.NET MVC
using DevExpress.XtraReports.Web.ReportDesigner;
using DevExpress.XtraReports.Web.ReportDesigner.Services;

void Application_Start(object sender, EventArgs e) {
    DefaultReportDesignerContainer.Register<PreviewReportCustomizationService, MyPreviewReportCustomizationService>();
}
ASP.NET Core
using DevExpress.XtraReports.Web.ReportDesigner.Services;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddSingleton<PreviewReportCustomizationService, MyPreviewReportCustomizationService>();

var app = builder.Build();

Inheritance

Object
PreviewReportCustomizationService
See Also