PivotHtmlFieldValuePreparedEventArgs.Cell Property
Gets the processed data cell.
Namespace: DevExpress.Web.ASPxPivotGrid
Assembly:
DevExpress.Web.ASPxPivotGrid.v23.1.dll
NuGet Package:
DevExpress.Web
Declaration
public TableCell Cell { get; }
Public ReadOnly Property Cell As TableCell
Property Value
Example
This example demonstrates how to use the ASPxPivotGrid.HtmlFieldValuePrepared event to customize the appearance of a specific Field Value.
- If the Country field value is equal to ‘Brazil’, the background color is set to LightGreen.
- If the Country field value is equal to ‘Argentina’, the background color is set to LightBlue.
- In other cases, the background color of the Country field values is set to LightYellow.
The image below shows the result.

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"
Inherits="FormatCellValues._Default" %>
<%@ Register Assembly="DevExpress.Web.ASPxPivotGrid.v__, Version=__,
Culture=neutral, PublicKeyToken=b88d1754d700e49a"
Namespace="DevExpress.Web.ASPxPivotGrid"
TagPrefix="dx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<dx:ASPxPivotGrid ID="ASPxPivotGrid1" runat="server"
DataSourceID="AccessDataSource1" Theme="Metropolis"
onhtmlfieldvalueprepared="ASPxPivotGrid1_HtmlFieldValuePrepared">
<Fields>
<dx:PivotGridField ID="fieldCountry" Area="RowArea"
AreaIndex="0" FieldName="Country">
</dx:PivotGridField>
<dx:PivotGridField ID="fieldYear" Area="ColumnArea"
AreaIndex="0" FieldName="Year">
</dx:PivotGridField>
<dx:PivotGridField ID="fieldTotal" Area="DataArea"
AreaIndex="0" FieldName="Total">
</dx:PivotGridField>
</Fields>
</dx:ASPxPivotGrid>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/App_Data/nwind.mdb"
SelectCommand="SELECT Customers.Country, Year([OrderDate]) AS [Year], Sum([UnitPrice]*[Quantity]) AS Total
FROM (Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID) INNER JOIN [Order Details] ON Orders.OrderID = [Order Details].OrderID
GROUP BY Customers.Country, Year([OrderDate])
HAVING (((Customers.Country) In ('Brazil','Argentina','Germany','USA', 'UK')));
">
</asp:AccessDataSource>
</div>
</form>
</body>
</html>
using System;
using System.Web.UI;
using System.Drawing;
namespace FormatCellValues {
public partial class _Default : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) {
}
protected void ASPxPivotGrid1_HtmlFieldValuePrepared(object sender, DevExpress.Web.ASPxPivotGrid.PivotHtmlFieldValuePreparedEventArgs e) {
if(Object.ReferenceEquals( e.Field, fieldCountry))
{
if (e.Value.ToString() == "Brazil")
e.Cell.Style[HtmlTextWriterStyle.BackgroundColor] = ColorTranslator.ToHtml( Color.LightGreen );
else if (e.Value.ToString() == "Argentina")
e.Cell.Style[HtmlTextWriterStyle.BackgroundColor] = ColorTranslator.ToHtml( Color.LightBlue);
else
e.Cell.Style[HtmlTextWriterStyle.BackgroundColor] = ColorTranslator.ToHtml( Color.LightYellow );
}
}
}
}
Imports System
Imports System.Web.UI
Imports System.Drawing
Namespace FormatCellValues
Partial Public Class _Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
End Sub
Protected Sub ASPxPivotGrid1_HtmlFieldValuePrepared(ByVal sender As Object, ByVal e As DevExpress.Web.ASPxPivotGrid.PivotHtmlFieldValuePreparedEventArgs)
If Object.ReferenceEquals(e.Field, fieldCountry) Then
If e.Value.ToString() = "Brazil" Then
e.Cell.Style(HtmlTextWriterStyle.BackgroundColor) = ColorTranslator.ToHtml(Color.LightGreen)
ElseIf e.Value.ToString() = "Argentina" Then
e.Cell.Style(HtmlTextWriterStyle.BackgroundColor) = ColorTranslator.ToHtml(Color.LightBlue)
Else
e.Cell.Style(HtmlTextWriterStyle.BackgroundColor) = ColorTranslator.ToHtml(Color.LightYellow)
End If
End If
End Sub
End Class
End Namespace
<%@ Page Language="vb" AutoEventWireup="true" CodeFile="Default.aspx.vb"
Inherits="FormatCellValues._Default" %>
<%@ Register Assembly="DevExpress.Web.ASPxPivotGrid.v__, Version=__,
Culture=neutral, PublicKeyToken=b88d1754d700e49a"
Namespace="DevExpress.Web.ASPxPivotGrid"
TagPrefix="dx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<dx:ASPxPivotGrid ID="ASPxPivotGrid1" runat="server"
DataSourceID="AccessDataSource1" Theme="Metropolis"
onhtmlfieldvalueprepared="ASPxPivotGrid1_HtmlFieldValuePrepared">
<Fields>
<dx:PivotGridField ID="fieldCountry" Area="RowArea"
AreaIndex="0" FieldName="Country">
</dx:PivotGridField>
<dx:PivotGridField ID="fieldYear" Area="ColumnArea"
AreaIndex="0" FieldName="Year">
</dx:PivotGridField>
<dx:PivotGridField ID="fieldTotal" Area="DataArea"
AreaIndex="0" FieldName="Total">
</dx:PivotGridField>
</Fields>
</dx:ASPxPivotGrid>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/App_Data/nwind.mdb"
SelectCommand="SELECT Customers.Country, Year([OrderDate]) AS [Year], Sum([UnitPrice]*[Quantity]) AS Total
FROM (Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID) INNER JOIN [Order Details] ON Orders.OrderID = [Order Details].OrderID
GROUP BY Customers.Country, Year([OrderDate])
HAVING (((Customers.Country) In ('Brazil','Argentina','Germany','USA', 'UK')));
">
</asp:AccessDataSource>
</div>
</form>
</body>
</html>
See Also