Skip to main content
All docs
V25.1
  • GridDocumentExportCustomizeCellEventArgs.GroupFieldName Property

    Returns the column field name of the processed group.

    Namespace: DevExpress.Blazor

    Assembly: DevExpress.Blazor.v25.1.dll

    NuGet Package: DevExpress.Blazor

    Declaration

    public string GroupFieldName { get; }

    Property Value

    Type Description
    String

    If the processed cell belongs to a group header/footer, the property returns the group field name. Otherwise, the property returns null.

    Remarks

    When exporting Grid data to PDF, handle the CustomizeCell event to customize table cells in the output file. The AreaType event argument identifies the area containing the processed cell.

    Use the GroupFieldName argument to obtain the column field name of the processed group. The argument returns null if the cell does not belong to a group header/footer (AreaType returns a value other than GroupHeader/GroupFooter).

    The following example exports Grid data to PDF and customizes the output table appearance:

    @rendermode InteractiveServer
    @using DevExpress.Drawing;
    @inject WeatherForecastService ForecastService
    
    <DxGrid @ref="Grid" Data="@forecasts" ShowGroupPanel="true">
        <Columns>
            <DxGridDataColumn Caption="Date" FieldName="Date" />
            <DxGridDataColumn Caption="Temperature (C)" FieldName="TemperatureC" ExportWidth="300"/>
            <DxGridDataColumn Caption="Temperature (F)" FieldName="TemperatureF" ExportWidth="300" />
            <DxGridDataColumn Caption="Summary" FieldName="Summary" GroupIndex="0" />
        </Columns>
        <TotalSummary>
            <DxGridSummaryItem SummaryType="GridSummaryItemType.Count" FieldName="Date" />
            <DxGridSummaryItem SummaryType="GridSummaryItemType.Min" FieldName="TemperatureC" />
            <DxGridSummaryItem SummaryType="GridSummaryItemType.Max" FieldName="TemperatureC" />
        </TotalSummary>
        <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() {
                CustomizeCell = OnCustomizeCell,
            });
        }
        void OnCustomizeCell(GridDocumentExportCustomizeCellEventArgs args) {
            if (args.AreaType == DocumentExportAreaType.Header){
                args.ElementStyle.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleCenter;
                args.ElementStyle.Font = new DXFont("Arial", 10, DXFontStyle.Bold);
            }
            if (args.AreaType == DocumentExportAreaType.GroupHeader && args.GroupFieldName == "Summary")
                args.Text = args.Value + ":";
            if (args.AreaType == DocumentExportAreaType.DataArea) {
                args.ElementStyle.BackColor = System.Drawing.Color.MintCream;
                if (args.ColumnFieldName.Contains("Temperature")) {
                    var forecast = (WeatherForecast)args.DataItem;
                    if (forecast.TemperatureC < 0)
                        args.ElementStyle.ForeColor = System.Drawing.Color.Blue;
                    if (forecast.TemperatureC > 30)
                        args.ElementStyle.ForeColor = System.Drawing.Color.Red;
                }
            }
            if (args.AreaType == DocumentExportAreaType.TotalFooter && args.ColumnFieldName == "TemperatureC") {
                args.Text = args.SummaryItems[0].Text + "°C\n" + args.SummaryItems[1].Text + "°C";
                args.ElementStyle.TextAlignment = DevExpress.XtraPrinting.TextAlignment.MiddleRight;
            }
            args.Handled = true;
        }
    }
    

    Blazor Grid PDF export - Customize Cells

    See Also