PrintableComponentContainer Class

A container that is used to add DevExpress controls, Windows Forms controls, controls that implement the IPrintable interface, and documents created using printing links to a report.

Namespace: DevExpress.XtraReports.UI

Assembly: DevExpress.XtraReports.v19.2.dll

Declaration

public class PrintableComponentContainer :
    WinControlContainer
Public Class PrintableComponentContainer
    Inherits WinControlContainer

Remarks

Use PrintableComponentContainer to add the following items to a report:

Create a PrintableComponentContainer class instance. Assign a control or document instance to the PrintableComponent property at runtime. Add the PrintableComponentContainer instance to a report band.

The following properties specify how to render a control inside the PrintableComponentContainer:

See the Use Third-Party Controls topic for more information.

Examples

The code sample below creates a DataGridView control instance and adds this instance to a report. The sample specifies that the DataGridView control is printed as a bitmap image.

using System.Windows.Forms;
using DevExpress.XtraReports.UI;
// ...
// Create an XtraReport instance.
XtraReport report = new XtraReport() {
    Bands = {
        new DetailBand()
    }
};
// Create a DataGridView control instance.
DataGridView dataGridView = new DataGridView();
// Create a PrintableComponentContainer instance for the data grid.
PrintableComponentContainer printableComponentContainer = new PrintableComponentContainer();
// Place the data grid inside the printable component container.
printableComponentContainer.PrintableComponent = dataGridView;
// Specify that the WM_PRINT message is used to print the control inside the printable component container.
printableComponentContainer.WindowControlOptions.DrawMethod = WinControlDrawMethod.UseWMPrint;
// Specify that the control inside the printable component container is always printed as an image.
printableComponentContainer.WindowControlOptions.PrintMode = WinControlPrintMode.AsImage;
// Specify that the printed image is a bitmap, not a metafile.
printableComponentContainer.WindowControlOptions.ImageType = WinControlImageType.Bitmap;
// Add the printable component container to the report.
report.Bands[BandKind.Detail].Controls.Add(printableComponentContainer);

Implements

DevExpress.XtraPrinting.IBrickOwner
DevExpress.Utils.Serializing.Helpers.IXtraSupportDeserializeCollectionItem
DevExpress.Utils.Serializing.IXtraSerializable

Inheritance

See Also