FormatConditionTopBottom Class
A format condition used to apply formatting to top/bottom values.
Namespace: DevExpress.DashboardCommon
Assembly: DevExpress.Dashboard.v24.1.Core.dll
NuGet Package: DevExpress.Dashboard.Core
Declaration
Remarks
To create a format condition to apply formatting to top or bottom values, do the following.
- Specify whether the formatting is applied to top or bottom values using the FormatConditionTopBottom.TopBottom property.
- Specify whether an absolute or percent boundary value is used to apply formatting using the FormatConditionTopBottom.RankType property.
- Specify the required rank value using the FormatConditionTopBottom.Rank property.
- Specify the required style settings applied to target elements using the FormatConditionStyleBase.StyleSettings property. You can change the color of dashboard item elements, font settings (AppearanceSettings) or add predefined icons (IconSettings).
Assign the resulting FormatConditionTopBottom object to the DashboardItemFormatRule.Condition property.
Example
The Top-Bottom (FormatConditionTopBottom
) format conditions allow you to highlight a specific number of topmost/bottommost values. This example shows how to apply conditional formatting to the specified number of top/bottom values. The number of values can be specified as an absolute value or a percentage of all values.
The Average format condition (FormatConditionAverage) is used to highlight values above or below an average value.
using DevExpress.DashboardCommon;
using DevExpress.XtraEditors;
using System.Drawing;
namespace Grid_FormatRules {
public partial class TopAverageConditionForm : XtraForm {
public TopAverageConditionForm() {
InitializeComponent();
Dashboard dashboard = new Dashboard(); dashboard.LoadFromXml(@"..\..\Data\Dashboard.xml");
dashboardViewer1.Dashboard = dashboard;
GridDashboardItem grid = (GridDashboardItem)dashboard.Items["gridDashboardItem1"];
GridDimensionColumn salesPerson = (GridDimensionColumn)grid.Columns[0];
GridMeasureColumn extendedPrice = (GridMeasureColumn)grid.Columns[1];
GridItemFormatRule topRule = new GridItemFormatRule(extendedPrice, salesPerson);
FormatConditionTopBottom topCondition = new FormatConditionTopBottom();
topCondition.TopBottom = DashboardFormatConditionTopBottomType.Top;
topCondition.RankType = DashboardFormatConditionValueType.Number;
topCondition.Rank = 3;
topCondition.StyleSettings = new IconSettings(FormatConditionIconType.IndicatorGreenCheck);
topRule.Condition = topCondition;
GridItemFormatRule bottomRule = new GridItemFormatRule(extendedPrice, salesPerson);
FormatConditionTopBottom bottomCondition = new FormatConditionTopBottom();
bottomCondition.TopBottom = DashboardFormatConditionTopBottomType.Bottom;
bottomCondition.RankType = DashboardFormatConditionValueType.Percent;
bottomCondition.Rank = 40;
bottomCondition.StyleSettings = new IconSettings(FormatConditionIconType.IndicatorRedFlag);
bottomRule.Condition = bottomCondition;
GridItemFormatRule aboveAverageRule = new GridItemFormatRule(extendedPrice);
FormatConditionAverage aboveAverageCondition = new FormatConditionAverage();
aboveAverageCondition.AverageType = DashboardFormatConditionAboveBelowType.Above;
aboveAverageCondition.StyleSettings =
new AppearanceSettings(Color.Green, FontStyle.Underline);
aboveAverageRule.Condition = aboveAverageCondition;
GridItemFormatRule belowAverageRule = new GridItemFormatRule(extendedPrice);
FormatConditionAverage belowAverageCondition = new FormatConditionAverage();
belowAverageCondition.AverageType = DashboardFormatConditionAboveBelowType.Below;
belowAverageCondition.StyleSettings =
new AppearanceSettings(Color.Orange, FontStyle.Underline);
belowAverageRule.Condition = belowAverageCondition;
grid.FormatRules.AddRange(topRule, bottomRule, aboveAverageRule, belowAverageRule);
}
}
}