DesignerLoadedEventArgs.DesignerHost Property

Gets the designer host which provides all the services that are available for editing a report in its End-User Designer.

Namespace: DevExpress.XtraReports.UserDesigner

Assembly: DevExpress.XtraReports.v21.1.dll

Declaration

public IDesignerHost DesignerHost { get; }

Property Value

Type Description
IDesignerHost

An object implementing the IDesignerHost interface that is used to manage designer transactions and components.

Remarks

When a report is loaded into the End-User Designer, then the designer’s host provides all the services needed to support the editing of the report. These services can be obtained via its GetService method. Review the following topic for more information: IDesignerHost.

Example

This example illustrates how to add a custom control to an End-User Report Designer’s toolbox by handling the XtraReport.DesignerLoaded event and accessing the toolbox service.

Tip

This code adds the XRZipCode control to the toolbox. It is hidden by default because most countries do not use it.

See Use Custom Controls to learn how to create custom report controls and add them to a Report Designer’s toolbox.

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

private void button1_Click(object sender, System.EventArgs e) {
    // Create a report instance.
    XtraReport1 report = new XtraReport1();

    // Create a Design Tool and assign the report to it.
    ReportDesignTool designTool = new ReportDesignTool(report);

    // Handle the DesignerLoaded event of the report.
    report.DesignerLoaded += report_DesignerLoaded;

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

void report_DesignerLoaded(object sender, DesignerLoadedEventArgs e) {
    // Access the Toolbox service.
    IToolboxService toolboxService = 
        (IToolboxService)e.DesignerHost.GetService(typeof(IToolboxService));

    // Add a custom control to the default category.
    toolboxService.AddToolboxItem(new ToolboxItem(typeof(XRZipCode)));

    // Add a custom control to a new category.
    // toolboxService.AddToolboxItem(new ToolboxItem(typeof(XRZipCode)), "New Category");
}
See Also