A data grid widget.

Included in: dx.webappjs.js, dx.all.js

dxDataGrid is a widget that allows you to represent data from a local or remote storage in the form of a grid. This widget provides a great number of features including such basics as sorting, grouping, filtering, selection, as well as more advanced capabilities, like state storing, templating, scrolling of various types.

You can create a widget using one of the following approaches.

  • jQuery
    Use the dxDataGrid jQuery plug-in.

    <div id="gridContainer"></div>
        dataSource: customers,
        columns: ['CompanyName', 'City', 'State', 'Phone', 'Fax']
  • Knockout
    Add a div element and apply the dxDataGrid binding to this element.

    <div data-bind="dxDataGrid: {
        dataSource: customers,
        columns: ['CompanyName', 'City', 'State', 'Phone', 'Fax']
  • Angular
    Add a div element and apply the dx-data-grid directive to this element.

    <div dx-data-grid="{
        dataSource: customers,
        columns: ['CompanyName', 'City', 'State', 'Phone', 'Fax']

Note that DevExtreme widgets require you to link the jQuery and Globalize libraries to your application. If you use the Knockout or Angular approach, the Knockout or Angular library is also required.

See Also

To provide data for the dxDataGrid widget, specify a data source. dxDataGrid accepts two types of data sources: an array of objects and a DataSource configuration object. To learn more about data binding in dxDataGrid, refer to the Data Binding guide.

View Demo Watch Video


This section describes the configuration options of the dxDataGrid widget.


This section describes the methods that can be used to manipulate the dxDataGrid widget.


This section describes events exposed by this widget.