Skip to main content
A newer version of this page is available. .

Gauge Class

Contains measures that provide data for a gauge in the GaugeDashboardItem.

Namespace: DevExpress.DashboardCommon

Assembly: DevExpress.Dashboard.v19.2.Core.dll

Declaration

public class Gauge :
    KpiElement

Remarks

Gauges displayed within the GaugeDashboardItem show the actual and target value of a particular parameter, as well as the difference between them. Data used to calculate the actual and target values is provided by a pair of measures - one Measure for each value.

The Gauge objects stored in the GaugeDashboardItem.Gauges collection specify these measures via the KpiElement.ActualValue and KpiElement.TargetValue properties.

The GaugeDashboardItem creates one gauge for each Gauge object in the GaugeDashboardItem.Gauges collection. If the SeriesDashboardItem.SeriesDimensions collection is not empty, multiple gauges are created for each Gauge object - one gauge for each dimension value. To learn more, see GaugeDashboardItem.Gauges.

Example

The following example demonstrates how to bind a Gauge dashboard item to data in code.

Note

The complete sample project How to Bind a Gauge Dashboard Item to Data at Runtime is available in the DevExpress Examples repository.

using System;
using System.Windows.Forms;
using DevExpress.DashboardCommon;

namespace Dashboard_CreateGauges {
    public partial class Form1 : Form {
        public Form1() {
            InitializeComponent();
        }
        private GaugeDashboardItem CreateGauges(DashboardObjectDataSource dataSource) {

            GaugeDashboardItem gauges = new GaugeDashboardItem();
            gauges.ViewType = GaugeViewType.CircularHalf;
            gauges.DataSource = dataSource;

            Gauge gauge = new Gauge();
            gauge.ActualValue = new Measure("Extended Price", SummaryType.Sum);
            gauges.Gauges.Add(gauge);

            gauges.SeriesDimensions.Add(new Dimension("Sales Person"));

            return gauges;
        }
        private void Form1_Load(object sender, EventArgs e) {
            Dashboard dashboard = new Dashboard();
            DashboardObjectDataSource dataSource = new DashboardObjectDataSource();
            dashboard.DataSources.Add(dataSource);

            GaugeDashboardItem gauges = CreateGauges(dataSource);
            dashboard.Items.Add(gauges);

            dashboardViewer1.AsyncDataLoading += (s, ev) => {
                ev.Data = new nwindDataSetTableAdapters.SalesPersonTableAdapter().GetData();
            };
            dashboardViewer1.Dashboard = dashboard;
        }
    }
}
See Also