Back to Devexpress

How to: Implement Conditional Formatting

aspnet-4011-components-tree-list-examples-how-to-implement-conditional-formatting.md

latest1.8 KB
Original Source

How to: Implement Conditional Formatting

  • Dec 17, 2020

This example shows how to paint individual data cells and entire nodes depending upon the ASPxTreList’s data. The ASPxTreeList.HtmlDataCellPrepared event is handled to custom paint budgets that are greater than $1,000,000.

The ASPxTreeList.HtmlRowPrepared event is handled to custom paint departments located at Monterey.

The image below shows the result:

csharp
using System.Drawing;

protected void treeList_HtmlRowPrepared(object sender, TreeListHtmlRowEventArgs e) {
    if(Object.Equals(e.GetValue("Location"), "Monterey"))
        e.Row.BackColor = Color.FromArgb(211, 235, 183);
}

protected void treeList_HtmlDataCellPrepared(object sender, TreeListHtmlDataCellEventArgs e) {
    if(e.Column.Name == "budget") {
        decimal value = (decimal)e.CellValue;
        e.Cell.BackColor = GetBudgetColor(value);
        if(value > 1000000M)
            e.Cell.Font.Bold = true;
    }
}
vb
Imports System.Drawing

Protected Sub treeList_HtmlRowPrepared(ByVal sender As Object, ByVal e As TreeListHtmlRowEventArgs)
   If Object.Equals(e.GetValue("Location"), "Monterey") Then
      e.Row.BackColor = Color.FromArgb(211, 235, 183)
   End If
End Sub

Protected Sub treeList_HtmlDataCellPrepared(ByVal sender As Object,_
ByVal e As TreeListHtmlDataCellEventArgs)
   If e.Column.Name = "budget" Then
      Dim value As Decimal = CDec(e.CellValue)
      e.Cell.BackColor = GetBudgetColor(value)
      If value > 1000000D Then
         e.Cell.Font.Bold = True
      End If
   End If
End Sub