DashboardViewer.CalculateHiddenTotals Property
Gets or sets whether to calculate totals for the hidden data items.
Namespace: DevExpress.DashboardWin
Assembly: DevExpress.Dashboard.v24.1.Win.dll
NuGet Package: DevExpress.Win.Dashboard
Declaration
Property Value
Type | Default | Description |
---|---|---|
Boolean | false | true, to calculate hidden totals; otherwise, false. |
Remarks
Set the CalculateHiddenTotals property to true to calculate totals for the hidden measures.
For displayed values, you can obtain hidden measures values regardless of the CalculateHiddenTotals property’s value.
Examples
This following code snippet calculates a total value (distinct count) for a hidden measure and display it in the dashboard item’s caption.
using DevExpress.DashboardCommon;
using DevExpress.DashboardCommon.ViewerData;
using DevExpress.DashboardWin;
using System.Data;
using System.IO;
using System.Linq;
using System.Windows.Forms;
namespace CalculateHIddenTotalsExample
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
dashboardViewer1.CalculateHiddenTotals = true;
dashboardViewer1.ConfigureDataConnection += DashboardViewer1_ConfigureDataConnection;
dashboardViewer1.CustomizeDashboardItemCaption += DashboardViewer1_CustomizeDashboardItemCaption;
// Load the dashboard after all DashboardViewer options are set.
dashboardViewer1.DashboardSource = typeof(Dashboard1);
}
private void DashboardViewer1_CustomizeDashboardItemCaption(object sender, CustomizeDashboardItemCaptionEventArgs e)
{
DashboardViewer viewer = (DashboardViewer)sender;
if (e.DashboardItemName == "pieDashboardItem1")
{
DashboardToolbarItem infoButton = new DashboardToolbarItem();
MultiDimensionalData mData = viewer.GetItemData(e.DashboardItemName);
var orderCount = mData.GetValue(mData.GetMeasures().Where(m => m.DataMember == "OrderID").First()).Value ?? 0;
e.FilterText += string.Format("{0:N0} distinct orders are displayed", orderCount);
}
}
private void DashboardViewer1_ConfigureDataConnection(object sender, DashboardConfigureDataConnectionEventArgs e)
{
ExtractDataSourceConnectionParameters parameters = e.ConnectionParameters as ExtractDataSourceConnectionParameters;
if (parameters != null) parameters.FileName = Path.GetFileName(parameters.FileName);
}
}
}
This example demonstrates how to access the underlying controls used to display the Pie Item and configure their settings to display the Total value in the title. Total values are calculated automatically if the CalculateHiddenTotals
property is enabled. Use the DashboardViewer.GetItemData method to get the total value.
using DevExpress.DashboardCommon.ViewerData;
using DevExpress.DashboardWin;
using DevExpress.XtraCharts;
namespace TotalsInChartsExample
{
public partial class Form1 : DevExpress.XtraEditors.XtraForm
{
public Form1() {
InitializeComponent();
dashboardViewer1.DashboardItemControlUpdated += Viewer_DashboardItemControlUpdated;
dashboardViewer1.CalculateHiddenTotals = true;
dashboardViewer1.DashboardSource = typeof(Dashboards.Dashboard1);
}
private void Viewer_DashboardItemControlUpdated(object sender, DashboardItemControlEventArgs e) {
if (e.DashboardItemName == "pieDashboardItem1") {
var viewer = (DashboardViewer)sender;
var chart = e.ChartControl;
var data = viewer.GetItemData(e.DashboardItemName);
var measure = data.GetMeasures()[0];
foreach (Series series in chart.Series) {
var axisPoint = series.Tag as AxisPoint;
if (axisPoint != null) {
var total = data.GetSlice(axisPoint).GetValue(measure).DisplayText;
var view = series.View as PieSeriesView;
if (view != null)
view.Titles[0].Text = string.Format("{0} - {1}", series.Name, total);
}
}
}
}
}
}
Related GitHub Examples
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the CalculateHiddenTotals property.
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.