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

How to: Perform a Drill-Down in DashboardViewer

  • 2 minutes to read

The following example demonstrates how to perform a drill-down in DashboardViewer.

In this example, the DashboardViewer.PerformDrillDown method is used to perform a drill-down for a specified row in a Grid dashboard item. This method is called in the SelectedIndexChanged event handler of the combo box.

The DashboardViewer.PerformDrillUp method called in the Click event handler returns the Grid dashboard item to the top detail level.

Imports Microsoft.VisualBasic
Imports System
Imports System.Collections.Generic
Imports DevExpress.XtraEditors
Imports System.Collections
Imports DevExpress.DashboardCommon
Imports DevExpress.DashboardCommon.ViewerData

Namespace Dashboard_PerformDrillDown
    Partial Public Class Form1
        Inherits XtraForm
        Public Sub New()
            InitializeComponent()

            ' Loads a dashboard from an XML file.
            dashboardViewer1.LoadDashboard("..\..\Data\Dashboard.xml")
            ' Obtains values that can be used to perform drill-down.
            Dim drillDownValues = dashboardViewer1.GetAvailableDrillDownValues("gridDashboardItem1")
            For Each rows As AxisPointTuple In drillDownValues
                comboBox1.Items.Add(rows.GetAxisPoint().Value)
            Next rows
        End Sub

        Private Sub comboBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles comboBox1.SelectedIndexChanged
            Dim comboBox1 As System.Windows.Forms.ComboBox = CType(sender, System.Windows.Forms.ComboBox)
            If dashboardViewer1.CanPerformDrillDown("gridDashboardItem1") = True Then
                ' Performs drill-down for a selected category.
                dashboardViewer1.PerformDrillDown("gridDashboardItem1", comboBox1.SelectedItem)
            Else
                ' Returns to the previous detail level and  
                ' performs drill-down for the selected category.
                dashboardViewer1.PerformDrillUp("gridDashboardItem1")
                dashboardViewer1.PerformDrillDown("gridDashboardItem1", comboBox1.SelectedItem)
            End If
        End Sub

        Private Sub btnDrillUp_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnDrillUp.Click
            If dashboardViewer1.CanPerformDrillUp("gridDashboardItem1") = True Then
                ' Performs a drill-up in the grid dashboard item.
                dashboardViewer1.PerformDrillUp("gridDashboardItem1")
            Else
                XtraMessageBox.Show("Drill-up is not possible at the current detail level")
            End If
        End Sub
    End Class
End Namespace
See Also