Skip to main content

DashboardViewer.GetItemDataAsync(String) Method

Obtains the displayed data for the specified dashboard item asynchronously.

Namespace: DevExpress.DashboardWin

Assembly: DevExpress.Dashboard.v23.2.Win.dll

NuGet Package: DevExpress.Win.Dashboard

Declaration

public Task<MultiDimensionalData> GetItemDataAsync(
    string dashboardItemName
)

Parameters

Name Type Description
dashboardItemName String

A String that specifies the component name of the dashboard item.

Returns

Type Description
Task<MultiDimensionalData>

The task object that is the asynchronous operation to get the data visualized in the dashboard item.

Example

This example demonstrates how to get the data displayed in the dashboard item asynchronously when the dashboard is loaded.

The labels at the top display the data row count for the specified dashboard item.

win-update-data-async-example

using DevExpress.DashboardCommon;
using DevExpress.XtraEditors;
using System;
using System.Threading.Tasks;

namespace DataCounterExample
{
    public partial class ViewerForm1 : XtraForm {
        public ViewerForm1() {
            InitializeComponent();
            dashboardViewer1.Initialized += OnDashboardViewerInitialized;
            dashboardViewer1.MasterFilterSet += OnDashboardViewerMasterFilterSet;
            dashboardViewer1.MasterFilterCleared += OnDashboardViewerMasterFilterCleared;
        }

        async void OnDashboardViewerInitialized(object sender, EventArgs e) {
            simpleLabelItem1.Text = await GetLabelText("choroplethMapDashboardItem1", "Map");
            simpleLabelItem2.Text = await GetLabelText("gridDashboardItem1", "Grid");
        }

        async void OnDashboardViewerMasterFilterSet(object sender, MasterFilterSetEventArgs e) {
            simpleLabelItem2.Text = await GetLabelText("gridDashboardItem1", "Grid");
        }

        async void OnDashboardViewerMasterFilterCleared(object sender, MasterFilterClearedEventArgs e) {
            simpleLabelItem2.Text = await GetLabelText("gridDashboardItem1", "Grid");
        }

        async Task<string> GetLabelText(string itemName, string itemCaption) {
            var data = await dashboardViewer1.GetItemDataAsync(itemName);
            int count = data.GetAxisPoints(data.GetAxisNames()[0]).Count;
            return string.Format("{0}: {1}", itemCaption, count);
        }
    }
}
See Also