Skip to main content

DashboardItemElementCustomColorEventArgs Class

Namespace: DevExpress.DashboardWin

Assembly: DevExpress.Dashboard.v22.1.Win.dll

Declaration

public class DashboardItemElementCustomColorEventArgs :
    EventArgs

Remarks

The DashboardViewer.DashboardItemElementCustomColor event allows you to color the required dashboard item elements (for instance, chart series points, pie segments) using specified colors. The DashboardItemElementCustomColorEventArgs class exposes the following settings that allow you to color the required element.

Note

By default, the Chart dashboard item colors lines (or fills areas) for the Line/Area series types using the color of the first series point. For these lines/areas, the DashboardItemElementCustomColorEventArgs.TargetElement property returns a tuple that does not contain the AxisPoint on the DashboardDataAxisNames.ChartArgumentAxis.

Example

The following example demonstrates how to color dashboard item elements using the DashboardViewer.DashboardItemElementCustomColor event.

In this example, chart series points, whose values exceed specified thresholds, are colored in green. Chart series points, whose values fall below specified thresholds, are colored in red.

Pie segments, whose contributions in total fall below the specified threshold, are colored in orange.

View Example

using System.Drawing;
using DevExpress.XtraEditors;
using DevExpress.DashboardWin;
using DevExpress.DashboardCommon;
using DevExpress.DashboardCommon.ViewerData;

namespace Dashboard_ElementCustomColor {
    public partial class Form1 : XtraForm {
        public Form1() {
            InitializeComponent();
            dashboardViewer1.LoadDashboard(@"..\..\Data\Dashboard.xml");
        }

        private void dashboardViewer1_DashboardItemElementCustomColor(object sender,             
            DashboardItemElementCustomColorEventArgs e) {

            MultiDimensionalData data = e.Data;
            AxisPointTuple currentElement = e.TargetElement;

            if (e.DashboardItemName == "chartDashboardItem1") {
                string country = 
                    currentElement.GetAxisPoint(DashboardDataAxisNames.ChartSeriesAxis).Value.ToString();
                decimal value = (decimal)(data.GetSlice(currentElement)).GetValue(e.Measures[0]).Value;
                if (country == "UK" && value > 50000 || country == "USA" && value > 100000)
                    e.Color = Color.DarkGreen;
                else 
                    e.Color = Color.DarkRed;
            }
            if (e.DashboardItemName == "pieDashboardItem1") {
                decimal value = 
                    (decimal)(data.GetSlice(currentElement)).GetValue(data.GetMeasures()[0]).Value;
                if (value < 100000)
                    e.Color = Color.Orange;
            }
        }
    }
}

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the DashboardItemElementCustomColorEventArgs class.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

Inheritance

Object
EventArgs
DashboardItemElementCustomColorEventArgs
See Also