Skip to main content

GridCsvExportOptions.AddEncodingPreamble Property

Specifies whether to include the encoding preamble at the beginning of the exported CSV file.

Namespace: DevExpress.Blazor

Assembly: DevExpress.Blazor.v23.2.dll

NuGet Package: DevExpress.Blazor

Declaration

[DefaultValue(false)]
public bool AddEncodingPreamble { get; set; }

Property Value

Type Default Description
Boolean false

true to add the preamble; otherwise, false.

Remarks

A preamble is a byte array that specifies the encoding used to create a file. You can add this byte sequence to the exported CSV file for other tools to determine the byte order and UTF type. The Grid uses the GetPreamble method to identify the used encoding.

The following example sets the current encoding to UTF-32 and adds its preamble to the exported file:

@using System.Text

<DxGrid @ref="Grid"
        Data="@Data">
    <Columns>
        <DxGridSelectionColumn Width="60px" AllowSelectAll="true" />
        <DxGridDataColumn FieldName="ContactName" Width="15%" />
        <DxGridDataColumn FieldName="ContactTitle" Width="15%" />
        <DxGridDataColumn FieldName="CompanyName" Width="20%" />
        <DxGridDataColumn FieldName="Country" Width="15%" GroupIndex="0" />
        <DxGridDataColumn FieldName="FullAddress" UnboundType="GridUnboundColumnType.String" UnboundExpression="[City] + ' - ' + [PostalCode] + ' - ' + [Address]" />
    </Columns>
</DxGrid>

<DxButton Text="Export to CSV" Click="ExportCsv_Click" />

@code {
    IEnumerable<object> Data { get; set; }
    IGrid Grid { get; set; }
    async Task ExportCsv_Click() {
       await Grid.ExportToCsvAsync("ExportResult", new GridCsvExportOptions() {
            Encoding = Encoding.UTF32,
            AddEncodingPreamble = true
        });
    }
}
See Also