The requested page is not available for the requested platform. You are viewing the content for Default platform.
All docs
V19.2
19.2
19.1
18.2
The page you are viewing does not exist in version 18.2. This link will take you to the root page.
18.1
The page you are viewing does not exist in version 18.1. This link will take you to the root page.
17.2
The page you are viewing does not exist in version 17.2. This link will take you to the root page.

Access to Underlying Widgets

  • 3 min to read

The Web Dashboard control uses DevExtreme widgets to visualize dashboard items' data. You can access these widgets and customize their settings to add specific capabilities.

The ASPxClientDashboard exposes the following events that allow you to access these widgets and customize their settings:

The ASPxClientDashboardItemWidgetEventArgs.ItemName event parameter returns the name of the dashboard item whose widget can be customized. Use the ASPxClientDashboardItemWidgetEventArgs.GetWidget method to access the corresponding underlying widget.

The following table lists dashboard items whose underlying widgets can be accessed when you handle the ItemWidget... events:

Dashboard Item

Underlying Widget(s)

GridItem

dxDataGrid

ChartItem

ScatterChartItem

dxChart

PieItem

an array of dxPieChart widgets

GaugeItem

an array of dxCircularGauge or dxLinearGauge widgets

MapItem

dxVectorMap

PivotItem

dxPivotGrid

ComboBoxItem

dxSelectBox or dxTagBox

ListBoxItem

dxList

TreeViewItem

dxTreeList

dxTreeView (for v17.1 and earlier)

TreemapItem

dxTreeMap

RangeFilterItem

dxRangeSelector

CardItem

CardWidget

DateFilterItem

DateFilterWidget

TextBoxItem

n/a See Note 1

ImageItem

n/a See Note 1

CustomItem

n/a See Note 2

1 The content of the TextBoxDashboardItem and the ImageDashboardItem is an HTML element wrapped in a jQuery object.

2 The CustomDashboardItem is a custom widget. You can customize it directly.

Limitations

Do not change the following settings to avoid possible issues:

  • data binding settings;
  • basic data presentation settings (for instance, a set of grid columns or chart series).

Note that changes made with the ItemWidget... events do not change the dashboard/dashboard items' appearance in exported documents.

Example

This example demonstrates how to customize client widgets used to visualize data within dashboard items at runtime using ASPxClientDashboard's API.

The following options are changed:

  • The hovered grid row is highlighted in the underlying dxDataGrid in the ItemWidgetCreated event handler.
  • A standard tooltip in the dxChart's series point is disabled. Click the required label on the argument axis to invoke a tooltip. The ItemWidgetUpdated and ItemWidgetUpdating event are used to subscribe and unsubscribe to/from the argumentAxisClick event.
  • A pie legend is shown for the underlying dxPieChart.
@Html.DevExpress().Dashboard(settings => {
    settings.Name = "Dashboard";
    settings.Width = Unit.Percentage(100);
    settings.Height = Unit.Percentage(100);
    settings.WorkingMode = DevExpress.DashboardWeb.WorkingMode.ViewerOnly;
    settings.ClientSideEvents.ItemWidgetCreated = "function(s, e) { customizeWidgets(s, e); }";
    settings.ClientSideEvents.ItemWidgetUpdated = "function(s, e) { customizeWidgets(s, e); }";
    settings.ClientSideEvents.ItemWidgetUpdating = "function(s, e) { unsubscribeFromEvents(s, e); }";
}).GetHtml()
<script src="~/Scripts/WidgetCustomization.js"></script>