All docs
V21.1
24.1
23.2
23.1
22.2
22.1
21.2
21.1
20.2
20.1
19.2
The page you are viewing does not exist in version 19.2.
19.1
The page you are viewing does not exist in version 19.1.
18.2
The page you are viewing does not exist in version 18.2.
18.1
The page you are viewing does not exist in version 18.1.
17.2
The page you are viewing does not exist in version 17.2.
A newer version of this page is available. Switch to the current version.

UI Components

Accordion

The Accordion UI component contains several panels displayed one under another. These panels can be collapsed or expanded by an end user, which makes this UI component very useful for presenting information in a limited amount of space.

View Demo Start Tutorial

See Also

ActionSheet

The ActionSheet UI component is a sheet containing a set of buttons located one under the other. These buttons usually represent several choices relating to a single task.

View Demo Read Guides

See Also

Autocomplete

The Autocomplete UI component is a textbox that provides suggestions while a user types into it.

View Demo Read Guides

See Also

BarGauge

The BarGauge UI component contains several circular bars that each indicates a single value.

View Demo Read Guides

See Also

Box

The Box UI component allows you to arrange various elements within it. Separate and adaptive, the Box UI component acts as a building block for the layout.

View Demo Read Guides

See Also

Bullet

The Bullet UI component is useful when you need to compare a single measure to a target value. The UI component comprises a horizontal bar indicating the measure and a vertical line indicating the target value.

View Demo Read Guides

See Also

Button

The Button UI component is a simple button that performs specified commands when a user clicks it.

View Demo Start Tutorial

See Also

ButtonGroup

The ButtonGroup is a UI component that contains a set of toggle buttons and can be used as a mode switcher.

Start Tutorial View Demo

See Also

Calendar

The Calendar is a UI component that displays a calendar and allows an end user to select the required date within a specified date range.

View Demo Read Guides

See Also

Chart

The Chart is a UI component that visualizes data from a local or remote storage using a great variety of series types along with different interactive elements, such as tooltips, crosshair pointer, legend, etc.

View Demo Read Guides

See Also

CheckBox

The CheckBox is a small box, which when selected by the end user, shows that a particular feature has been enabled or a specific property has been chosen.

View Demo Read Guides

See Also

CircularGauge

The CircularGauge is a UI component that indicates values on a circular numeric scale.

View Demo Read Guides

See Also

ColorBox

The ColorBox is a UI component that allows an end user to enter a color or pick it out from the drop-down editor.

View Demo Read Guides

See Also

ContextMenu

The ContextMenu UI component displays a single- or multi-level context menu. An end user invokes this menu by a right click or a long press.

View Demo Read Guides

See Also

DataGrid

The DataGrid is a UI component that represents data from a local or remote source in the form of a grid. This UI component offers such basic features as sorting, grouping, filtering, as well as more advanced capabilities, like state storing, client-side exporting, master-detail interface, and many others.

Start Tutorial View Demo

See Also

DateBox

The DateBox is a UI component that displays date and time in a specified format, and enables a user to pick or type in the required date/time value.

View Demo Start Tutorial

See Also

DeferRendering

The DeferRendering is a UI component that waits for its content to be ready before rendering it. While the content is getting ready, the DeferRendering displays a loading indicator.

See Also

Diagram

The Diagram UI component provides a visual interface to help you design new and modify existing diagrams.

Start Tutorial View Demo

See Also

Draggable

Draggable is a user interface utility that allows UI component elements to be dragged and dropped.

Drawer

The Drawer is a dismissible or permanently visible panel used for navigation in responsive web application layouts.

NOTE
The Drawer UI component is not designed to contain another Drawer. Do not use nested Drawers to avoid possible issues in your application.

Start Tutorial View Demo

See Also

DropDownBox

The DropDownBox UI component consists of a text field, which displays the current value, and a drop-down field, which can contain any UI element.

View Demo Read Guides

See Also

DropDownButton

The DropDownButton is a button that opens a drop-down menu.

Start Tutorial View Demo

See Also

FileManager

The FileManager is a UI component that allows users to upload, select, and manage files and directories in different file storages.

FileUploader

The FileUploader UI component enables an end user to upload files to the server. An end user can select files in the file explorer or drag and drop files to the FileUploader area on the page.

View Demo Read Guides

See Also

FilterBuilder

The FilterBuilder UI component allows a user to build complex filter expressions with an unlimited number of filter conditions, combined by logical operations using the UI.

View Demo Read Guides

See Also

Form

The Form UI component represents fields of a data object as a collection of label-editor pairs. These pairs can be arranged in several groups, tabs and columns.

View Demo Start Tutorial

See Also

Funnel

The Funnel is a UI component that visualizes a value at different stages. It helps assess value changes throughout these stages and identify potential issues. The Funnel UI component conveys information using different interactive elements (tooltips, labels, legend) and enables you to create not only a funnel, but also a pyramid chart.

View Demo Read Guides

See Also

Gallery

The Gallery is a UI component that displays a collection of images in a carousel. The UI component is supplied with various navigation controls that allow a user to switch between images.

View Demo Read Guides

See Also

Gantt

The Gantt is a UI component that displays the task flow and dependencies between tasks.

View Demo

See Also

HtmlEditor

HtmlEditor is a WYSIWYG editor that allows you to format textual and visual content and to output it in HTML or Markdown. HtmlEditor is built on top of and requires the DevExtreme Quill.

View Demo Start Tutorial

See Also

LinearGauge

The LinearGauge is a UI component that indicates values on a linear numeric scale.

View Demo Read Guides

See Also

List

The List is a UI component that represents a collection of items in a scrollable list.

View Demo Start Tutorial

See Also

LoadIndicator

The LoadIndicator is a UI element notifying the viewer that a process is in progress.

View Demo Read Guides

See Also

LoadPanel

The LoadPanel is an overlay UI component notifying the viewer that loading is in progress.

View Demo Read Guides

See Also

Lookup

The Lookup is a UI component that allows an end user to search for an item in a collection shown in a drop-down menu.

View Demo Read Guides

See Also

Map

The Map is an interactive UI component that displays a geographic map with markers and routes.

View Demo Read Guides

See Also

Menu

The Menu UI component is a panel with clickable items. A click on an item opens a drop-down menu, which can contain several submenus.

View Demo Read Guides

See Also

MultiView

The MultiView is a UI component that contains several views. An end user navigates through the views by swiping them in the horizontal direction.

View Demo Read Guides

See Also

NavBar

The NavBar is a UI component that navigates the application views.

View Demo

See Also

NumberBox

The NumberBox is a UI component that displays a numeric value and allows a user to modify it by typing in a value, and incrementing or decrementing it using the keyboard or mouse.

View Demo Read Guides

See Also

PieChart

The PieChart is a UI component that visualizes data as a circle divided into sectors that each represents a portion of the whole.

View Demo Read Guides

See Also

PivotGrid

The PivotGrid is a UI component that allows you to display and analyze multi-dimensional data from a local storage or an OLAP cube.

Start Tutorial View Demo

See Also

PivotGridFieldChooser

A complementary UI component for the PivotGrid that allows you to manage data displayed in the PivotGrid. The field chooser is already integrated in the PivotGrid and can be invoked using the context menu. If you need to continuously display the field chooser near the PivotGrid UI component, use the PivotGridFieldChooser UI component.

Both the PivotGridFieldChooser and the PivotGrid must be bound to one and the same instance of the PivotGridDataSource. Create the PivotGridDataSource individually and then assign it to both UI components as shown in the code above.

View Demo

See Also

PolarChart

The PolarChart is a UI component that visualizes data in a polar coordinate system.

The PolarChart UI component visualizes data in a polar coordinate system. In this system, each point on a plane is determined by the distance from the center (the point's value) and the angle from a fixed direction (the point's argument). To understand how a chart is displayed in a polar coordinate system, imagine how it would be displayed in a rectangular coordinate system and then round off the argument axis in your mind.

DevExtreme HTML5 Charts DataVisualization DevExtreme HTML5 Charts PolarChart RadarChart DataVisualization

View Demo Read Guides

See Also

Popover

The Popover is a UI component that shows notifications within a box with an arrow pointing to a specified UI element.

View Demo Read Guides

See Also

Popup

The Popup UI component is a pop-up window overlaying the current view.

View Demo Start Tutorial

See Also

ProgressBar

The ProgressBar is a UI component that shows current progress.

View Demo Read Guides

See Also

RadioGroup

The RadioGroup is a UI component that contains a set of radio buttons and allows an end user to make a single selection from the set.

View Demo Read Guides

See Also

RangeSelector

The RangeSelector is a UI component that allows a user to select a range of values on a scale.

This UI component represents a scale (numeric or date-time) and two sliders. A user selects the required range by moving the sliders.

RangeSelector

A chart can be displayed in the background of the RangeSelector UI component. This allows end users to select the required range in a chart series. You can also integrate the RangeSelector UI component with a stand-alone Chart UI component to emulate chart zooming and scrolling.

View Demo Read Guides

See Also

RangeSlider

The RangeSlider is a UI component that allows an end user to choose a range of numeric values.

View Demo Read Guides

See Also

Resizable

The Resizable UI component enables its content to be resizable in the UI.

Read Guides

See Also

ResponsiveBox

The ResponsiveBox UI component allows you to create an application or a website with a layout adapted to different screen sizes.

View Demo Read Guides

See Also

Sankey

The Sankey is a UI component that visualizes the flow magnitude between value sets. The values being connected are called nodes; the connections - links. The higher the flow magnitude, the wider the link is.

View Demo Read Guides

See Also

Scheduler

The Scheduler is a UI component that represents scheduled data and allows a user to manage and edit it.

View Demo Start Tutorial

See Also

ScrollView

The ScrollView is a UI component that enables a user to scroll its content.

View Demo Read Guides

See Also

SelectBox

The SelectBox UI component is an editor that allows an end user to select an item from a drop-down list.

Start Tutorial View Demo

See Also

SlideOut

The SlideOut UI component is a classic slide-out menu paired with a view. An end user opens the menu by swiping away the view.

View Demo

See Also

SlideOutView

The SlideOutView UI component is a classic slide-out menu paired with a view. This UI component is very similar to the SlideOut with only one difference - the SlideOut always contains the List in the slide-out menu, while the SlideOutView can hold any collection there.

See Also

Slider

The Slider is a UI component that allows an end user to set a numeric value on a continuous range of possible values.

View Demo Read Guides

See Also

Sortable

Sortable is a user interface utility that allows a UI component's items to be reordered via drag and drop gestures.

Sparkline

The Sparkline UI component is a compact chart that contains only one series. Owing to their size, sparklines occupy very little space and can be easily collected in a table or embedded straight in text.

View Demo Read Guides

See Also

SpeedDialAction

The SpeedDialAction is a button that performs a custom action. It can be represented by a Floating Action Button (FAB) or a button in a speed dial menu opened with the FAB.

When there is only one SpeedDialAction on a page, it is represented by a Floating Action Button (FAB).

When there are multiple SpeedDialActions, they are collected in a speed dial menu that can contain up to five actions. In this case, the FAB opens the menu. You can use the floatingActionButtonConfig object to change the maximum number of actions, and the FAB's position and icons in the opened and closed states.

Start Tutorial View Demo

See Also

Switch

The Switch is a UI component that can be in two states: "On" and "Off".

View Demo Read Guides

See Also

TabPanel

The TabPanel is a UI component consisting of the Tabs and MultiView UI components. It automatically synchronizes the selected tab with the currently displayed view and vice versa.

View Demo Start Tutorial

See Also

Tabs

The Tabs is a tab strip used to switch between pages or views. This UI component is included in the TabPanel UI component, but you can use the Tabs separately as well.

View Demo Read Guides

See Also

TagBox

The TagBox UI component is an editor that allows an end user to select multiple items from a drop-down list.

View Demo Start Tutorial

See Also

TextArea

The TextArea is a UI component that enables a user to enter and edit a multi-line text.

View Demo Read Guides

See Also

TextBox

The TextBox is a UI component that enables a user to enter and edit a single line of text.

View Demo Read Guides

See Also

TileView

The TileView UI component contains a collection of tiles. Tiles can store much more information than ordinary buttons, that is why they are very popular in apps designed for touch devices.

View Demo Read Guides

See Also

Toast

The Toast is a UI component that provides pop-up notifications.

View Demo Read Guides

See Also

Toolbar

The Toolbar is a UI component containing items that usually manage screen content. Those items can be plain text or UI components.

View Demo Start Tutorial

See Also

Tooltip

The Tooltip UI component displays a tooltip for a specified element on the page.

View Demo Read Guides

See Also

TreeList

The TreeList is a UI component that represents data from a local or remote source in the form of a multi-column tree view. This UI component offers such features as sorting, filtering, editing, selection, etc.

Start Tutorial View Demo

See Also

TreeMap

The TreeMap is a UI component that displays hierarchical data by using nested rectangles.

In the TreeMap UI component, hierarchical data is represented by a set of nested rectangles whose sizes are proportional to the visualized values. TreeMap operates with plain and hierarchical data sources. Also, it can visualize a hierarchy reconstructed from a flat data source.

TreeMap provides three layout algorithms out-of-the-box along with the capability to implement your own algorithm. In addition, the UI component includes API methods that enable you to implement the drill down feature. Moreover, TreeMap supports all interactive features available in other DevExtreme Data Visualization Widgets: click, hover and selection.

View Demo

See Also

TreeView

The TreeView UI component is a tree-like representation of textual data.

Start Tutorial View Demo

See Also

ValidationGroup

The ValidationGroup is a UI component that allows you to validate several editors simultaneously.

Read Guides

NOTE
Nested validation groups are not supported.
See Also

ValidationSummary

A UI component for displaying the result of checking validation rules for editors.

View Demo Read Guides

See Also

Validator

A UI component that is used to validate the associated DevExtreme editors against the defined validation rules.

View Demo Read Guides

See Also

VectorMap

The VectorMap is a UI component that visualizes geographical locations. This UI component represents a geographical map that contains areas and markers. Areas embody continents and countries. Markers flag specific points on the map, for example, towns, cities or capitals.

View Demo Read Guides

See Also

Errors and Warnings

This section lists errors and warnings that may occur in UI components.

Markup Components

This section describes components that can be used when defining a UI component markup.

UI Events

The events used to handle user interaction with UI elements.

DevExtreme provides UI events for processing a user's interaction with a specific UI element. The DevExpress.events namespace exposes an API to work with the UI events.

The following code shows how to attach, trigger and then detach a dxhold event handler from a page element with the target ID. The timeout parameter specifies how long the target should be held to allow the handler to execute:

jQuery
JavaScript
var dxholdHandler = function(jQueryEvent) {
    alert(`The ${$(jQueryEvent.target).text()} element is being held for ${jQueryEvent.data.timeout} ms.`);
};

$("#target").on("dxhold", { timeout: 1000 }, dxholdHandler); 
$("#target").trigger("dxhold");
$("#target").off("dxhold", dxholdHandler);

See jQuery documentation for details.

Angular
JavaScript
import { on, trigger, off } from "devextreme/events";
// ...
export class AppComponent implements AfterViewInit {
    ngAfterViewInit() {
        const dxholdHandler = (event) => {
            alert(`The ${event.target.textContent} element is being held for ${event.data.timeout} ms.`);
            return true; // true - continues event propagation, false - stops
        }
        const target: HTMLElement = document.getElementById("target");

        on(target, "dxhold", { timeout: 1000 }, dxholdHandler);
        trigger(target, "dxhold");
        off(target, "dxhold", dxholdHandler);
    }
}
Knockout
HTML
JavaScript
<div id="target" data-bind="dxhold: { execute: dxholdHandler, timeout: 1000 }">
    Target element
</div>
var viewModel = {
    dxholdHandler: function(viewModel, jQueryEvent) {
        alert(`The ${$(jQueryEvent.target).text()} element is being held for ${jQueryEvent.data.timeout} ms.`);
    }
}
NOTE
Knockout does not provide an API to unsubscribe from an event.

See Knockout documentation for details.

AngularJS
HTML
JavaScript
<div id="target" dx-hold="{ execute: 'dxholdHandler($event)', timeout: 1000 }">
    Target element
</div>
angular.module("DemoApp", ["dx"])
    .controller("DemoController", function DemoController($scope) {
        $scope.dxholdHandler = function(jQueryEvent) {
            alert(`The ${$(jQueryEvent.target).text()} element is being held for ${jQueryEvent.data.timeout} ms.`);
        }
    });
NOTE
AngularJS does not provide an API to unsubscribe from an event.

CSS Classes

This section describes the DevExtreme CSS classes you can use to define the appearance of an element.