Back to Devexpress

DashboardFlatDataSource Class

dashboard-devexpress-dot-dashboardcommon-e4cfb754.md

latest4.9 KB
Original Source

DashboardFlatDataSource Class

A data source that contains a custom item‘s data in a tabular format.

Namespace : DevExpress.DashboardCommon

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

NuGet Package : DevExpress.Dashboard.Core

Declaration

csharp
public class DashboardFlatDataSource :
    IList,
    ICollection,
    IEnumerable,
    ITypedList
vb
Public Class DashboardFlatDataSource
    Implements IList,
               ICollection,
               IEnumerable,
               ITypedList

The following members return DashboardFlatDataSource objects:

Remarks

DashboardFlatDataSource is a wrapper for MultiDimensionalData. A DashboardFlatDataSource object contains aggregated data in a tabular format. The object allows you to bind data to a custom item’s underlying control that supports IList data sources.

DashboardFlatDataSource has the following methods that allow you to access its data:

GetColoringColumnGets the coloring column corresponding to the data item.GetDisplayTextGets the cell’s display text.GetValueGets the cell’s value.GetColumnsGets data source columns.GetDisplayTextColumnGets the display text column corresponding to the data item.

The following code snippet binds data to the custom Funnel chart’s series:

csharp
using System.Windows.Forms;
using DevExpress.DashboardCommon;
using DevExpress.DashboardWin;
using DevExpress.XtraCharts;

public class CustomFunnelControlProvider : CustomControlProviderBase {
  CustomDashboardItem<CustomFunnelMetadata> dashboardItem;
  //...
  protected override void UpdateControl(CustomItemData customItemData){
      chart.Series.Clear();
      if(dashboardItem.Metadata.Value != null && dashboardItem.Metadata.Arguments.Count > 0) {
          Series series = new Series("A Funnel Series", ViewType.Funnel);
          flatData = customItemData.GetFlatData(new DashboardFlatDataSourceOptions() { AddColoringColumns = true });
          series.DataSource = flatData;
          series.ValueDataMembers.AddRange(dashboardItem.Metadata.Value.UniqueId);
          series.ArgumentDataMember = dashboardItem.Metadata.Arguments.Last().UniqueId;
          series.ColorDataMember = flatData.GetColoringColumn(dashboardItem.Metadata.Value.UniqueId).Name;
          chart.Series.Add(series);
      }
  }
}
vb
Imports System.Windows.Forms
Imports DevExpress.DashboardCommon
Imports DevExpress.DashboardWin
Imports DevExpress.XtraCharts

Public Class CustomFunnelControlProvider
    Inherits CustomControlProviderBase
  Private dashboardItem As CustomDashboardItem(Of CustomFunnelMetadata)
  '...
  Protected Overrides Sub UpdateControl(ByVal customItemData As CustomItemData)
      chart.Series.Clear()
      If dashboardItem.Metadata.Value IsNot Nothing AndAlso dashboardItem.Metadata.Arguments.Count > 0 Then
          Dim series As New Series("A Funnel Series", ViewType.Funnel)
          flatData = customItemData.GetFlatData(New DashboardFlatDataSourceOptions() With {.AddColoringColumns = True})
          series.DataSource = flatData
          series.ValueDataMembers.AddRange(dashboardItem.Metadata.Value.UniqueId)
          series.ArgumentDataMember = dashboardItem.Metadata.Arguments.Last().UniqueId
          series.ColorDataMember = flatData.GetColoringColumn(dashboardItem.Metadata.Value.UniqueId).Name
          chart.Series.Add(series)
      End If
  End Sub
End Class

Inheritance

Object DashboardFlatDataSource

See Also

DashboardFlatDataSource Members

DevExpress.DashboardCommon Namespace