Back to Devexpress

How to: Apply Conditional Formatting to Exported Data

aspnet-3819-components-grid-view-examples-how-to-render-a-different-content-from-default-exporting.md

latest1.7 KB
Original Source

How to: Apply Conditional Formatting to Exported Data

  • Nov 12, 2021

This example shows how to draw company names in an exported document based on the number of products. Company names are painted in Green if the product count is greater than 1,000. Otherwise, company names are painted in Red.

The image below shows the result:

csharp
using DevExpress.Web.Export;
using DevExpress.Web.ASPxGridView;

protected void grid_ExportRenderBrick(object sender, DevExpress.Web.ASPxGridViewExportRenderingEventArgs e) {
    GridViewDataColumn dataColumn = e.Column as GridViewDataColumn;
    if(e.RowType == GridViewRowType.Data && dataColumn != null && dataColumn.FieldName == "CompanyName") {
        e.BrickStyle.ForeColor = (decimal)e.GetValue("ProductAmount") > 1000 ? Color.Green : Color.Red;
        e.BrickStyle.BackColor = Color.LightYellow;
    }
}

protected void btn_Click(object sender, EventArgs e) {
    grid.ExportPdfToResponse();
}
vb
Imports DevExpress.Web.Export
Imports DevExpress.Web.ASPxGridView

Protected Sub grid_ExportRenderBrick(ByVal sender As Object, ByVal e As DevExpress.Web.ASPxGridViewExportRenderingEventArgs)
    Dim dataColumn As GridViewDataColumn = TryCast(e.Column, GridViewDataColumn)
    If e.RowType = GridViewRowType.Data AndAlso dataColumn IsNot Nothing AndAlso dataColumn.FieldName = "CompanyName" Then
        e.BrickStyle.ForeColor = If(CDec(e.GetValue("ProductAmount")) > 1000, Color.Green, Color.Red)
        e.BrickStyle.BackColor = Color.LightYellow
    End If
End Sub

Protected Sub btn_Click(ByVal sender As Object, ByVal e As EventArgs)
    grid.ExportPdfToResponse()
End Sub