The requested page is not available for the requested platform. You are viewing the content for Default platform.

XRSubreport Class

A Subreport control that is used to embed other reports in an XtraReport.

Namespace: DevExpress.XtraReports.UI

Assembly: DevExpress.XtraReports.v19.2.dll


public class XRSubreport :
Public Class XRSubreport
    Inherits SubreportBase


Use the XRSubreport control to embed a report into another report:

Within an MDI End-User Report Designer, double click an XRSubreport control to open the associated report in a new Design Panel.


This example illustrates how to use the XRSubreport control at runtime.

You can also handle the XRSubreport control's XRControl.BeforePrint event and set its SubreportBase.ReportSource property to assign a report to it.

using DevExpress.XtraReports.UI;
// ...

private void xrSubreport1_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) {
    ((XRSubreport)sender).ReportSource = new WindowsFormsApplication1.Reports.XtraReport3();

The following example demonstrates how to create a XRSubreport control and assign its main properties (e.g., SubreportBase.ReportSource). This example assumes that an XtraReport object passed as a parameter to the CreateCompositeReport method, has already been created in the current project.

using System.Drawing;
using DevExpress.XtraReports.UI;
// ...

public XtraReport CreateCompositeReport(XtraReport detailReport) {
    // Create a report.
    XtraReport mainReport = new XtraReport();

    // Create a subreport.
    XRSubreport subreport = new XRSubreport();

    // Create a detail band and add it to the main report.
    DetailBand detailBand = new DetailBand();

    // Set the subreport's location.
    subreport.Location = new Point(110, 100);

    // Specify a detail report as a report source for the subreport.
    subreport.ReportSource = detailReport;

    // Add the subreport to the detail band.

    return mainReport;


See Also