Back to Devexpress

Execute Commands in the End-User Report Designer

xtrareports-2572-desktop-reporting-winforms-reporting-end-user-report-designer-for-winforms-api-and-customization-execute-commands-in-end-user-report-designer.md

latest3.3 KB
Original Source

Execute Commands in the End-User Report Designer

  • Aug 18, 2023
  • 2 minutes to read

Each user action in Report Designer corresponds to a command listed in the ReportCommand enumeration.

This example illustrates how to execute report commands in an End-User Report Designer by calling the XRDesignPanel.ExecCommand method of an active XRDesignPanel.

csharp
using DevExpress.XtraReports.UI;
using DevExpress.XtraReports.UserDesigner;
// ...

private void button1_Click(object sender, System.EventArgs e) {
    // Create a Design Tool with an assigned report instance.
    ReportDesignTool designTool = new ReportDesignTool(new XtraReport1());

    // Access the standard or ribbon-based Designer form.
    // IDesignForm designForm = designTool.DesignForm;
    IDesignForm designForm = designTool.DesignRibbonForm;

    // Create a new blank report to initialize a Design Panel.
    designForm.DesignMdiController.CreateNewReport();

    // Handle the Design Panel's Loaded event.
    designForm.DesignMdiController.DesignPanelLoaded += DesignMdiController_DesignPanelLoaded;

    // Load a Report Designer in a dialog window.
    // designTool.ShowDesignerDialog();
    designTool.ShowRibbonDesignerDialog();
}

void DesignMdiController_DesignPanelLoaded(object sender, DesignerLoadedEventArgs e) {
    // Run the Report Wizard every time a Report Designer is loaded.
    ((XRDesignPanel)sender).ExecCommand(ReportCommand.NewReportWizard);
}
vb
Imports DevExpress.XtraReports.UI
Imports DevExpress.XtraReports.UserDesigner
' ...

Private Sub button1_Click(sender As Object, e As System.EventArgs)
    ' Create a Design Tool with an assigned report instance.
    Dim designTool As New ReportDesignTool(New XtraReport1())

    ' Access the standard or ribbon-based Designer form.
    ' Dim designForm As IDesignForm = designTool.DesignForm
    Dim designForm As IDesignForm = designTool.DesignRibbonForm

    ' Create a new blank report to initialize a Design Panel.
    designForm.DesignMdiController.CreateNewReport()

    ' Handle the Design Panel's Loaded event.
    AddHandler designForm.DesignMdiController.DesignPanelLoaded, _ 
        AddressOf DesignMdiController_DesignPanelLoaded

    ' Load a Report Designer in a dialog window.
    ' designTool.ShowDesignerDialog()
    designTool.ShowRibbonDesignerDialog()
End Sub

Private Sub DesignMdiController_DesignPanelLoaded(sender As Object, e As DesignerLoadedEventArgs)
    ' Run the Report Wizard every time a Report Designer is loaded.
    DirectCast(sender, XRDesignPanel).ExecCommand(ReportCommand.NewReportWizard)
End Sub

See Also

Hide Commands from the End-User Report Designer

Override Commands in the End-User Report Designer (Implement Custom Saving)