Back to Devexpress

BrickGraphics.BeginUnionRect() Method

corelibraries-devexpress-dot-xtraprinting-dot-brickgraphics-32f922c3.md

latest4.3 KB
Original Source

BrickGraphics.BeginUnionRect() Method

Must be called before the creation of a brick group.

Namespace : DevExpress.XtraPrinting

Assembly : DevExpress.Printing.v25.2.Core.dll

NuGet Package : DevExpress.Printing.Core

Declaration

csharp
public void BeginUnionRect()
vb
Public Sub BeginUnionRect

Remarks

A user can group several bricks. This operation prevents clipping of bricks combined in a group when page margins change. After calling the BeginUnionRect method, all bricks added to a report are combined into the group. Brick grouping ends after calling the BrickGraphics.EndUnionRect method.

Example

The following code demonstrates how to create a non-separable group of bricks using the BeginUnionRect and the EndUnionRect methods. The result is shown in the picture below.

Note

These bricks are kept together if the page size allows this; otherwise the group is split as usual.

csharp
using DevExpress.XtraPrinting;
// ...

    BrickGraphics brickGraph = printingSystem1.Graph;
    int top = 0;

    // Start the report generation.
    printingSystem1.Begin();

    // Specify a page area.
    brickGraph.Modifier = BrickModifier.Detail;
    // Start drawing a brick group.
    brickGraph.BeginUnionRect();

    // Specify formatting.
    brickGraph.StringFormat = new BrickStringFormat(StringAlignment.Center, 
        StringAlignment.Center);
    brickGraph.BackColor = Color.Khaki;
    brickGraph.BorderColor = Color.MidnightBlue;
    brickGraph.Font = new DXFont("Tahoma", 14, DXFontStyle.Bold | DXFontStyle.Italic);

    // Draw bricks.
    brickGraph.DrawString("DevExpress", Color.MidnightBlue,
        new RectangleF(0, 0, 150, 50), BorderSide.All);
    brickGraph.DrawString("100% Native", Color.MidnightBlue,
        new RectangleF(0, top += 50, 150, 50), BorderSide.All);
    brickGraph.DrawString(".NET Tecnologies", Color.MidnightBlue,
        new RectangleF(0, top += 50, 150, 50), BorderSide.All);

    // Finish drawing a brick group.
    brickGraph.EndUnionRect();

    // Finish the report generation.
    printingSystem1.End();

    // Preview the report.
    printingSystem1.PreviewFormEx.Show();
vb
Imports DevExpress.XtraPrinting
' ...

    Dim brickGraph As BrickGraphics = printingSystem1.Graph
    Dim rect As RectangleF
    Dim top As Integer = 0

    ' Start the report generation.
    printingSystem1.Begin()

    ' Specify a page area.
    brickGraph.Modifier = BrickModifier.Detail
    ' Start drawing a brick group.
    brickGraph.BeginUnionRect()

    ' Specify formatting.
    brickGraph.StringFormat = New BrickStringFormat(StringAlignment.Center, _
        StringAlignment.Center)
    brickGraph.BackColor = Color.Khaki
    brickGraph.BorderColor = Color.MidnightBlue
    brickGraph.Font = New DXFont("Tahoma", 14, DXFontStyle.Bold Or DXFontStyle.Italic)

    ' Draw bricks.
    rect = New RectangleF(0, 0, 150, 50)
    brickGraph.DrawString("DevExpress", Color.MidnightBlue, rect, BorderSide.All)
    top += 50
    rect = New RectangleF(0, top, 150, 50)
    brickGraph.DrawString("100% Native", Color.MidnightBlue, rect, BorderSide.All)
    top += 50
    rect = New RectangleF(0, top, 150, 50)
    brickGraph.DrawString(".NET Tecnologies", Color.MidnightBlue, rect, BorderSide.All)

    ' Finish drawing a brick group.
    brickGraph.EndUnionRect()

    ' Finish the report generation.
    printingSystem1.End()

    ' Preview the report.
    printingSystem1.PreviewFormEx.Show()

See Also

EndUnionRect()

BrickGraphics Class

BrickGraphics Members

DevExpress.XtraPrinting Namespace