Your search did not match any results.
Data Grid

Toolbar Customization

API Reference
The DevExtreme HTML5 Data Grid widget allows you to customize its toolbar using the onToolbarPreparing function. You can add new items to the toolbar or customize the existing ones. In this demo, the toolbar contains a collection of other widgets from the DevExtreme HTML5 UI Widgets library.
Copy to Codepen
Apply
Reset
$(function(){ $("#gridContainer").dxDataGrid({ dataSource: orders, columnChooser: { enabled: true }, loadPanel: { enabled: true }, columns: ["OrderNumber", "OrderDate", "Employee", { caption: "City", dataField: "CustomerStoreCity" }, { caption: "State", groupIndex: 0, dataField: "CustomerStoreState", }, { dataField: "SaleAmount", alignment: "right", format: "currency" }], onToolbarPreparing: function(e) { var dataGrid = e.component; e.toolbarOptions.items.unshift({ location: "before", template: function(){ return $("<div/>") .addClass("informer") .append( $("<h2 />") .addClass("count") .text(getGroupCount("CustomerStoreState")), $("<span />") .addClass("name") .text("Total Count") ); } }, { location: "before", widget: "dxSelectBox", options: { width: 200, items: [{ value: "CustomerStoreState", text: "Grouping by State" }, { value: "Employee", text: "Grouping by Employee" }], displayExpr: "text", valueExpr: "value", value: "CustomerStoreState", onValueChanged: function(e) { dataGrid.clearGrouping(); dataGrid.columnOption(e.value, "groupIndex", 0); $(".informer .count").text(getGroupCount(e.value)); } } }, { location: "before", widget: "dxButton", options: { hint: "Collapse All", icon: "chevrondown", onClick: function(e) { var expanding = e.component.option("icon") === "chevronnext"; dataGrid.option("grouping.autoExpandAll", expanding); e.component.option({ icon: expanding ? "chevrondown": "chevronnext", hint: expanding ? "Collapse All" : "Expand All" }); } } }, { location: "after", widget: "dxButton", options: { icon: "refresh", onClick: function() { dataGrid.refresh(); } } }); } }); function getGroupCount(groupField) { return DevExpress.data.query(orders) .groupBy(groupField) .toArray().length; } });
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>DevExtreme Demo</title> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" /> <script src="js/jquery-3.1.0.min.js"></script> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/16.2.4/css/dx.spa.css" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/16.2.4/css/dx.common.css" /> <link rel="dx-theme" data-theme="generic.light" href="https://cdn3.devexpress.com/jslib/16.2.4/css/dx.light.css" /> <script src="https://cdn3.devexpress.com/jslib/16.2.4/js/dx.all.js"></script> <script src="data.js"></script> <link rel="stylesheet" type ="text/css" href ="styles.css" /> <script src="index.js"></script> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="gridContainer"></div> </div> </body> </html>
.dx-datagrid-header-panel .dx-toolbar { margin: 0; padding-right: 20px; background-color: #5186C3; } .dx-datagrid-header-panel .dx-toolbar-items-container { height: 70px; } .dx-datagrid-header-panel .dx-toolbar-before { background-color: #337AB7; } .dx-datagrid-header-panel .dx-selectbox { margin: 17px 10px; } .dx-datagrid-header-panel .dx-button { margin: 17px 0; } .informer { height: 70px; width: 130px; text-align: center; background: #2A507C url("../../../../images/icons/arrow.png") no-repeat 100% 50%; } .count { color: #fff; padding-top: 15px; line-height: 27px; } .name { color: #619dd1; }
var orders = [{ "ID": 1, "OrderNumber": 35703, "OrderDate": "2014/02/13", "SaleAmount": 11800, "Terms": "15 Days", "CustomerStoreState": "California", "CustomerStoreCity": "Los Angeles", "Employee": "Harv Mudd" }, { "ID": 4, "OrderNumber": 35711, "OrderDate": "2014/03/21", "SaleAmount": 16050, "Terms": "15 Days", "CustomerStoreState": "California", "CustomerStoreCity": "San Jose", "Employee": "Jim Packard" }, { "ID": 5, "OrderNumber": 35714, "OrderDate": "2014/04/19", "SaleAmount": 14750, "Terms": "15 Days", "CustomerStoreState": "Nevada", "CustomerStoreCity": "Las Vegas", "Employee": "Harv Mudd" }, { "ID": 7, "OrderNumber": 35983, "OrderDate": "2014/01/12", "SaleAmount": 3725, "Terms": "15 Days", "CustomerStoreState": "Colorado", "CustomerStoreCity": "Denver", "Employee": "Todd Hoffman" }, { "ID": 9, "OrderNumber": 36987, "OrderDate": "2014/04/08", "SaleAmount": 14200, "Terms": "15 Days", "CustomerStoreState": "Utah", "CustomerStoreCity": "Salt Lake City", "Employee": "Clark Morgan" }, { "ID": 11, "OrderNumber": 38466, "OrderDate": "2014/02/28", "SaleAmount": 7800, "Terms": "15 Days", "CustomerStoreState": "California", "CustomerStoreCity": "Los Angeles", "Employee": "Harv Mudd" }, { "ID": 15, "OrderNumber": 39874, "OrderDate": "2014/05/28", "SaleAmount": 9050, "Terms": "30 Days", "CustomerStoreState": "Nevada", "CustomerStoreCity": "Las Vegas", "Employee": "Harv Mudd" }, { "ID": 18, "OrderNumber": 42847, "OrderDate": "2014/02/06", "SaleAmount": 20400, "Terms": "30 Days", "CustomerStoreState": "Wyoming", "CustomerStoreCity": "Casper", "Employee": "Todd Hoffman" }, { "ID": 19, "OrderNumber": 43982, "OrderDate": "2014/02/16", "SaleAmount": 6050, "Terms": "30 Days", "CustomerStoreState": "Utah", "CustomerStoreCity": "Salt Lake City", "Employee": "Clark Morgan" }, { "ID": 29, "OrderNumber": 56272, "OrderDate": "2014/01/25", "SaleAmount": 15850, "Terms": "30 Days", "CustomerStoreState": "Utah", "CustomerStoreCity": "Salt Lake City", "Employee": "Clark Morgan" }, { "ID": 30, "OrderNumber": 57429, "OrderDate": "2013/12/31", "SaleAmount": 11050, "Terms": "30 Days", "CustomerStoreState": "Arizona", "CustomerStoreCity": "Phoenix", "Employee": "Clark Morgan" }, { "ID": 32, "OrderNumber": 58292, "OrderDate": "2014/04/29", "SaleAmount": 13500, "Terms": "15 Days", "CustomerStoreState": "California", "CustomerStoreCity": "Los Angeles", "Employee": "Harv Mudd" }];