Skip to main content
All docs
V25.1

GridDocumentExportCustomizeDocumentEventArgs Class

Contains information for the CustomizeDocument event.

Namespace: DevExpress.Blazor

Assembly: DevExpress.Blazor.v25.1.dll

NuGet Package: DevExpress.Blazor

Declaration

public class GridDocumentExportCustomizeDocumentEventArgs :
    GridDocumentExportCustomizeDocumentEventArgsBase

Remarks

When exporting Grid data to PDF, use the CustomizeDocument export option to configure style and page settings for the output document:

@rendermode InteractiveServer
@using DevExpress.Drawing;
@inject WeatherForecastService ForecastService

<DxGrid @ref="Grid" Data="@forecasts">
    <Columns>
        <DxGridDataColumn Caption="Date" FieldName="Date" />
        <DxGridDataColumn Caption="Temperature (C)" FieldName="TemperatureC" />
        <DxGridDataColumn Caption="Temperature (F)" FieldName="TemperatureF" />
        <DxGridDataColumn Caption="Summary" FieldName="Summary" />
    </Columns>
    <ToolbarTemplate>
        <DxToolbar>
            <DxToolbarItem Text="Export to PDF" Click="ExportPdf_Click" BeginGroup="true" />
        </DxToolbar>
    </ToolbarTemplate>
</DxGrid>

@code {
    IGrid Grid;
    private WeatherForecast[]? forecasts;

    protected override async Task OnInitializedAsync() {
        forecasts = await ForecastService.GetForecastAsync(DateOnly.FromDateTime(DateTime.Now));
    }
    async Task ExportPdf_Click() {
        await Grid.ExportToPdfAsync("ExportResult", new GridPdfExportOptions() {
            CustomizeDocument = OnCustomizeDocument, // Customizes exported document appearance
            CustomizePageHeader = args => args.Text = "Weather Forecast", // Adds a page header
            CustomizePageFooter = args => args.Text = "Page {0} of {1}", // Adds a page footer
        });
    }
    void OnCustomizeDocument(GridDocumentExportCustomizeDocumentEventArgs args) {
        // Sets default font settings for all elements in the exported document
        args.DefaultElementStyle.Font = new DXFont("Times New Roman", 12, DXFontStyle.Regular);
        // Switches the page orientation to landscape
        args.Landscape = true;
        // Sets page margins to 0.5 inches
        args.Margins = new DXMargins(50, 50, 50, 50);
        // Sets the page size to a custom value (width: 6 inches, height: 8 inches)
        args.PaperKind = DevExpress.Drawing.Printing.DXPaperKind.Custom;
        args.PageSize = new System.Drawing.Size(600, 800);
    }
}

Inheritance

Object
GridDocumentExportCustomizeDocumentEventArgsBase
GridDocumentExportCustomizeDocumentEventArgs
See Also