DevExtreme v24.2 is now available.

Explore our newest features/capabilities and share your thoughts with us.

Your search did not match any results.

React Data Grid - Filter Panel

The Filter panel is a UI element that displays the combined filter. This filter is stored in the filterValue property and consists of filters that users apply in other UI elements (filter row, header filter, filterBuilder).

To display the filter panel, set the filterPanel.visible property to true.

A click on the combined filter calls the integrated filter builder. You can configure it in the filterBuilder object. In this demo, this object is used to add the weekends custom filter operation.

Backend API
import React from 'react'; import DataGrid, { Column, FilterRow, HeaderFilter, FilterPanel, FilterBuilderPopup, Scrolling, } from 'devextreme-react/data-grid'; import { orders } from './data.ts'; const saleAmountEditorOptions = { format: 'currency', showClearButton: true, inputAttr: { 'aria-label': 'Filter cell', }, }; const getOrderDay = (rowData) => (new Date(rowData.OrderDate)).getDay(); const filterBuilderPopupPosition = { of: window, at: 'top' as const, my: 'top' as const, offset: { y: 10 }, }; const filterBuilder = { customOperations: [{ name: 'weekends', caption: 'Weekends', dataTypes: ['date' as const], icon: 'check', hasValue: false, calculateFilterExpression: () => [[getOrderDay, '=', 0], 'or', [getOrderDay, '=', 6]], }], allowHierarchicalFields: true, }; const filterValue = [['Employee', '=', 'Clark Morgan'], 'and', ['OrderDate', 'weekends']]; const saleAmountHeaderFilters = [{ text: 'Less than $3000', value: ['SaleAmount', '<', 3000], }, { text: '$3000 - $5000', value: [['SaleAmount', '>=', 3000], ['SaleAmount', '<', 5000]], }, { text: '$5000 - $10000', value: [['SaleAmount', '>=', 5000], ['SaleAmount', '<', 10000]], }, { text: '$10000 - $20000', value: [['SaleAmount', '>=', 10000], ['SaleAmount', '<', 20000]], }, { text: 'Greater than $20000', value: ['SaleAmount', '>=', 20000], }]; const App = () => ( <DataGrid id="gridContainer" filterBuilder={filterBuilder} defaultFilterValue={filterValue} dataSource={orders} keyExpr="ID" showBorders={true} > <FilterRow visible={true} /> <FilterPanel visible={true} /> <FilterBuilderPopup position={filterBuilderPopupPosition} /> <HeaderFilter visible={true} /> <Scrolling mode="infinite" /> <Column dataType="number" dataField="OrderNumber" caption="Invoice Number" > <HeaderFilter groupInterval={10000} /> </Column> <Column dataField="OrderDate" dataType="date" /> <Column editorOptions={saleAmountEditorOptions} dataField="SaleAmount" dataType="number" format="currency" > <HeaderFilter dataSource={saleAmountHeaderFilters} /> </Column> <Column dataField="Employee" dataType="string" /> <Column dataField="CustomerInfo.StoreCity" caption="City" dataType="string" /> <Column dataField="CustomerInfo.StoreState" caption="State" dataType="string" /> </DataGrid> ); export default App;
import React from 'react'; import DataGrid, { Column, FilterRow, HeaderFilter, FilterPanel, FilterBuilderPopup, Scrolling, } from 'devextreme-react/data-grid'; import { orders } from './data.js'; const saleAmountEditorOptions = { format: 'currency', showClearButton: true, inputAttr: { 'aria-label': 'Filter cell', }, }; const getOrderDay = (rowData) => new Date(rowData.OrderDate).getDay(); const filterBuilderPopupPosition = { of: window, at: 'top', my: 'top', offset: { y: 10 }, }; const filterBuilder = { customOperations: [ { name: 'weekends', caption: 'Weekends', dataTypes: ['date'], icon: 'check', hasValue: false, calculateFilterExpression: () => [[getOrderDay, '=', 0], 'or', [getOrderDay, '=', 6]], }, ], allowHierarchicalFields: true, }; const filterValue = [['Employee', '=', 'Clark Morgan'], 'and', ['OrderDate', 'weekends']]; const saleAmountHeaderFilters = [ { text: 'Less than $3000', value: ['SaleAmount', '<', 3000], }, { text: '$3000 - $5000', value: [ ['SaleAmount', '>=', 3000], ['SaleAmount', '<', 5000], ], }, { text: '$5000 - $10000', value: [ ['SaleAmount', '>=', 5000], ['SaleAmount', '<', 10000], ], }, { text: '$10000 - $20000', value: [ ['SaleAmount', '>=', 10000], ['SaleAmount', '<', 20000], ], }, { text: 'Greater than $20000', value: ['SaleAmount', '>=', 20000], }, ]; const App = () => ( <DataGrid id="gridContainer" filterBuilder={filterBuilder} defaultFilterValue={filterValue} dataSource={orders} keyExpr="ID" showBorders={true} > <FilterRow visible={true} /> <FilterPanel visible={true} /> <FilterBuilderPopup position={filterBuilderPopupPosition} /> <HeaderFilter visible={true} /> <Scrolling mode="infinite" /> <Column dataType="number" dataField="OrderNumber" caption="Invoice Number" > <HeaderFilter groupInterval={10000} /> </Column> <Column dataField="OrderDate" dataType="date" /> <Column editorOptions={saleAmountEditorOptions} dataField="SaleAmount" dataType="number" format="currency" > <HeaderFilter dataSource={saleAmountHeaderFilters} /> </Column> <Column dataField="Employee" dataType="string" /> <Column dataField="CustomerInfo.StoreCity" caption="City" dataType="string" /> <Column dataField="CustomerInfo.StoreState" caption="State" dataType="string" /> </DataGrid> ); export default App;
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.tsx'; ReactDOM.render( <App />, document.getElementById('app'), );
export const orders = [{ ID: 1, OrderNumber: 35703, OrderDate: '2014/04/10', SaleAmount: 11800, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 4, OrderNumber: 35711, OrderDate: '2014/01/12', SaleAmount: 16050, Terms: '15 Days', Employee: 'Jim Packard', CustomerInfo: { StoreState: 'California', StoreCity: 'San Jose', }, }, { ID: 5, OrderNumber: 35714, OrderDate: '2014/01/22', SaleAmount: 14750, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 7, OrderNumber: 35983, OrderDate: '2014/02/07', SaleAmount: 3725, Terms: '15 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Colorado', StoreCity: 'Denver', }, }, { ID: 9, OrderNumber: 36987, OrderDate: '2014/03/11', SaleAmount: 14200, Terms: '15 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 11, OrderNumber: 38466, OrderDate: '2014/03/01', SaleAmount: 7800, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 14, OrderNumber: 39420, OrderDate: '2014/02/15', SaleAmount: 20500, Terms: '15 Days', Employee: 'Jim Packard', CustomerInfo: { StoreState: 'California', StoreCity: 'San Jose', }, }, { ID: 15, OrderNumber: 39874, OrderDate: '2014/02/04', SaleAmount: 9050, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 18, OrderNumber: 42847, OrderDate: '2014/02/15', SaleAmount: 20400, Terms: '30 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Wyoming', StoreCity: 'Casper', }, }, { ID: 19, OrderNumber: 43982, OrderDate: '2014/05/29', SaleAmount: 6050, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 29, OrderNumber: 56272, OrderDate: '2014/02/06', SaleAmount: 15850, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 30, OrderNumber: 57429, OrderDate: '2014/05/16', SaleAmount: 11050, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Arizona', StoreCity: 'Phoenix', }, }, { ID: 32, OrderNumber: 58292, OrderDate: '2014/05/13', SaleAmount: 13500, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 36, OrderNumber: 62427, OrderDate: '2014/01/27', SaleAmount: 23500, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 39, OrderNumber: 65977, OrderDate: '2014/02/05', SaleAmount: 2550, Terms: '15 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Wyoming', StoreCity: 'Casper', }, }, { ID: 40, OrderNumber: 66947, OrderDate: '2014/03/23', SaleAmount: 3500, Terms: '15 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 42, OrderNumber: 68428, OrderDate: '2014/04/10', SaleAmount: 10500, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 43, OrderNumber: 69477, OrderDate: '2014/03/09', SaleAmount: 14200, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Anaheim', }, }, { ID: 46, OrderNumber: 72947, OrderDate: '2014/01/14', SaleAmount: 13350, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 47, OrderNumber: 73088, OrderDate: '2014/03/25', SaleAmount: 8600, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Reno', }, }, { ID: 50, OrderNumber: 76927, OrderDate: '2014/04/27', SaleAmount: 9800, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 51, OrderNumber: 77297, OrderDate: '2014/04/30', SaleAmount: 10850, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Arizona', StoreCity: 'Phoenix', }, }, { ID: 56, OrderNumber: 84744, OrderDate: '2014/02/10', SaleAmount: 4650, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 57, OrderNumber: 85028, OrderDate: '2014/05/17', SaleAmount: 2575, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Reno', }, }, { ID: 59, OrderNumber: 87297, OrderDate: '2014/04/21', SaleAmount: 14200, Terms: '30 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Wyoming', StoreCity: 'Casper', }, }, { ID: 60, OrderNumber: 88027, OrderDate: '2014/02/14', SaleAmount: 13650, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 65, OrderNumber: 94726, OrderDate: '2014/05/22', SaleAmount: 20500, Terms: '15 Days', Employee: 'Jim Packard', CustomerInfo: { StoreState: 'California', StoreCity: 'San Jose', }, }, { ID: 66, OrderNumber: 95266, OrderDate: '2014/03/10', SaleAmount: 9050, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 69, OrderNumber: 98477, OrderDate: '2014/01/01', SaleAmount: 23500, Terms: '15 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Wyoming', StoreCity: 'Casper', }, }, { ID: 70, OrderNumber: 99247, OrderDate: '2014/02/08', SaleAmount: 2100, Terms: '15 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 78, OrderNumber: 174884, OrderDate: '2014/04/10', SaleAmount: 7200, Terms: '30 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Colorado', StoreCity: 'Denver', }, }, { ID: 81, OrderNumber: 188877, OrderDate: '2014/02/11', SaleAmount: 8750, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Arizona', StoreCity: 'Phoenix', }, }, { ID: 82, OrderNumber: 191883, OrderDate: '2014/02/05', SaleAmount: 9900, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 83, OrderNumber: 192474, OrderDate: '2014/01/21', SaleAmount: 12800, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Anaheim', }, }, { ID: 84, OrderNumber: 193847, OrderDate: '2014/03/21', SaleAmount: 14100, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'San Diego', }, }, { ID: 85, OrderNumber: 194877, OrderDate: '2014/03/06', SaleAmount: 4750, Terms: '30 Days', Employee: 'Jim Packard', CustomerInfo: { StoreState: 'California', StoreCity: 'San Jose', }, }, { ID: 86, OrderNumber: 195746, OrderDate: '2014/05/26', SaleAmount: 9050, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 87, OrderNumber: 197474, OrderDate: '2014/03/02', SaleAmount: 6400, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Reno', }, }, { ID: 88, OrderNumber: 198746, OrderDate: '2014/05/09', SaleAmount: 15700, Terms: '30 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Colorado', StoreCity: 'Denver', }, }, { ID: 91, OrderNumber: 214222, OrderDate: '2014/02/08', SaleAmount: 11050, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Arizona', StoreCity: 'Phoenix', }, }];
window.exports = window.exports || {}; window.config = { transpiler: 'ts', typescriptOptions: { module: 'system', emitDecoratorMetadata: true, experimentalDecorators: true, jsx: 'react', }, meta: { 'react': { 'esModule': true, }, 'typescript': { 'exports': 'ts', }, 'devextreme/time_zone_utils.js': { 'esModule': true, }, 'devextreme/localization.js': { 'esModule': true, }, 'devextreme/viz/palette.js': { 'esModule': true, }, 'openai': { 'esModule': true, }, }, paths: { 'npm:': 'https://unpkg.com/', 'bundles:': '../../../../bundles/', 'externals:': '../../../../bundles/externals/', }, defaultExtension: 'js', map: { 'ts': 'npm:plugin-typescript@8.0.0/lib/plugin.js', 'typescript': 'npm:typescript@4.2.4/lib/typescript.js', 'jszip': 'npm:jszip@3.10.1/dist/jszip.min.js', 'react': 'npm:react@17.0.2/umd/react.development.js', 'react-dom': 'npm:react-dom@17.0.2/umd/react-dom.development.js', 'prop-types': 'npm:prop-types/prop-types.js', 'rrule': 'npm:rrule@2.6.4/dist/es5/rrule.js', 'luxon': 'npm:luxon@3.4.4/build/global/luxon.min.js', 'es6-object-assign': 'npm:es6-object-assign', 'devextreme': 'npm:devextreme@link:../../packages/devextreme/artifacts/npm/devextreme/cjs', 'devextreme-react': 'npm:devextreme-react@link:../../packages/devextreme-react/npm/cjs', 'devextreme-quill': 'npm:devextreme-quill@1.7.1/dist/dx-quill.min.js', 'devexpress-diagram': 'npm:devexpress-diagram@2.2.5/dist/dx-diagram.js', 'devexpress-gantt': 'npm:devexpress-gantt@4.1.54/dist/dx-gantt.js', '@devextreme/runtime': 'npm:@devextreme/runtime@3.0.12', 'inferno': 'npm:inferno@7.4.11/dist/inferno.min.js', 'inferno-compat': 'npm:inferno-compat/dist/inferno-compat.min.js', 'inferno-create-element': 'npm:inferno-create-element@7.4.11/dist/inferno-create-element.min.js', 'inferno-dom': 'npm:inferno-dom/dist/inferno-dom.min.js', 'inferno-hydrate': 'npm:inferno-hydrate/dist/inferno-hydrate.min.js', 'inferno-clone-vnode': 'npm:inferno-clone-vnode/dist/inferno-clone-vnode.min.js', 'inferno-create-class': 'npm:inferno-create-class/dist/inferno-create-class.min.js', 'inferno-extras': 'npm:inferno-extras/dist/inferno-extras.min.js', 'devextreme-cldr-data': 'npm:devextreme-cldr-data@1.0.3', // SystemJS plugins 'plugin-babel': 'npm:systemjs-plugin-babel@0.0.25/plugin-babel.js', 'systemjs-babel-build': 'npm:systemjs-plugin-babel@0.0.25/systemjs-babel-browser.js', // Prettier 'prettier/standalone': 'npm:prettier@2.8.8/standalone.js', 'prettier/parser-html': 'npm:prettier@2.8.8/parser-html.js', }, packages: { 'devextreme': { defaultExtension: 'js', }, 'devextreme-react': { main: 'index.js', }, 'devextreme/events/utils': { main: 'index', }, 'devextreme/localization/messages': { format: 'json', defaultExtension: 'json', }, 'devextreme/events': { main: 'index', }, 'es6-object-assign': { main: './index.js', defaultExtension: 'js', }, }, packageConfigPaths: [ 'npm:@devextreme/*/package.json', 'npm:@devextreme/runtime@3.0.12/inferno/package.json', ], babelOptions: { sourceMaps: false, stage0: true, react: true, }, }; System.config(window.config);
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.js'; ReactDOM.render(<App />, document.getElementById('app'));
export const orders = [ { ID: 1, OrderNumber: 35703, OrderDate: '2014/04/10', SaleAmount: 11800, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 4, OrderNumber: 35711, OrderDate: '2014/01/12', SaleAmount: 16050, Terms: '15 Days', Employee: 'Jim Packard', CustomerInfo: { StoreState: 'California', StoreCity: 'San Jose', }, }, { ID: 5, OrderNumber: 35714, OrderDate: '2014/01/22', SaleAmount: 14750, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 7, OrderNumber: 35983, OrderDate: '2014/02/07', SaleAmount: 3725, Terms: '15 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Colorado', StoreCity: 'Denver', }, }, { ID: 9, OrderNumber: 36987, OrderDate: '2014/03/11', SaleAmount: 14200, Terms: '15 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 11, OrderNumber: 38466, OrderDate: '2014/03/01', SaleAmount: 7800, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 14, OrderNumber: 39420, OrderDate: '2014/02/15', SaleAmount: 20500, Terms: '15 Days', Employee: 'Jim Packard', CustomerInfo: { StoreState: 'California', StoreCity: 'San Jose', }, }, { ID: 15, OrderNumber: 39874, OrderDate: '2014/02/04', SaleAmount: 9050, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 18, OrderNumber: 42847, OrderDate: '2014/02/15', SaleAmount: 20400, Terms: '30 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Wyoming', StoreCity: 'Casper', }, }, { ID: 19, OrderNumber: 43982, OrderDate: '2014/05/29', SaleAmount: 6050, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 29, OrderNumber: 56272, OrderDate: '2014/02/06', SaleAmount: 15850, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 30, OrderNumber: 57429, OrderDate: '2014/05/16', SaleAmount: 11050, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Arizona', StoreCity: 'Phoenix', }, }, { ID: 32, OrderNumber: 58292, OrderDate: '2014/05/13', SaleAmount: 13500, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 36, OrderNumber: 62427, OrderDate: '2014/01/27', SaleAmount: 23500, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 39, OrderNumber: 65977, OrderDate: '2014/02/05', SaleAmount: 2550, Terms: '15 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Wyoming', StoreCity: 'Casper', }, }, { ID: 40, OrderNumber: 66947, OrderDate: '2014/03/23', SaleAmount: 3500, Terms: '15 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 42, OrderNumber: 68428, OrderDate: '2014/04/10', SaleAmount: 10500, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 43, OrderNumber: 69477, OrderDate: '2014/03/09', SaleAmount: 14200, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Anaheim', }, }, { ID: 46, OrderNumber: 72947, OrderDate: '2014/01/14', SaleAmount: 13350, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 47, OrderNumber: 73088, OrderDate: '2014/03/25', SaleAmount: 8600, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Reno', }, }, { ID: 50, OrderNumber: 76927, OrderDate: '2014/04/27', SaleAmount: 9800, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 51, OrderNumber: 77297, OrderDate: '2014/04/30', SaleAmount: 10850, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Arizona', StoreCity: 'Phoenix', }, }, { ID: 56, OrderNumber: 84744, OrderDate: '2014/02/10', SaleAmount: 4650, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 57, OrderNumber: 85028, OrderDate: '2014/05/17', SaleAmount: 2575, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Reno', }, }, { ID: 59, OrderNumber: 87297, OrderDate: '2014/04/21', SaleAmount: 14200, Terms: '30 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Wyoming', StoreCity: 'Casper', }, }, { ID: 60, OrderNumber: 88027, OrderDate: '2014/02/14', SaleAmount: 13650, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 65, OrderNumber: 94726, OrderDate: '2014/05/22', SaleAmount: 20500, Terms: '15 Days', Employee: 'Jim Packard', CustomerInfo: { StoreState: 'California', StoreCity: 'San Jose', }, }, { ID: 66, OrderNumber: 95266, OrderDate: '2014/03/10', SaleAmount: 9050, Terms: '15 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 69, OrderNumber: 98477, OrderDate: '2014/01/01', SaleAmount: 23500, Terms: '15 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Wyoming', StoreCity: 'Casper', }, }, { ID: 70, OrderNumber: 99247, OrderDate: '2014/02/08', SaleAmount: 2100, Terms: '15 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Utah', StoreCity: 'Salt Lake City', }, }, { ID: 78, OrderNumber: 174884, OrderDate: '2014/04/10', SaleAmount: 7200, Terms: '30 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Colorado', StoreCity: 'Denver', }, }, { ID: 81, OrderNumber: 188877, OrderDate: '2014/02/11', SaleAmount: 8750, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Arizona', StoreCity: 'Phoenix', }, }, { ID: 82, OrderNumber: 191883, OrderDate: '2014/02/05', SaleAmount: 9900, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Los Angeles', }, }, { ID: 83, OrderNumber: 192474, OrderDate: '2014/01/21', SaleAmount: 12800, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'Anaheim', }, }, { ID: 84, OrderNumber: 193847, OrderDate: '2014/03/21', SaleAmount: 14100, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'California', StoreCity: 'San Diego', }, }, { ID: 85, OrderNumber: 194877, OrderDate: '2014/03/06', SaleAmount: 4750, Terms: '30 Days', Employee: 'Jim Packard', CustomerInfo: { StoreState: 'California', StoreCity: 'San Jose', }, }, { ID: 86, OrderNumber: 195746, OrderDate: '2014/05/26', SaleAmount: 9050, Terms: '30 Days', Employee: 'Harv Mudd', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Las Vegas', }, }, { ID: 87, OrderNumber: 197474, OrderDate: '2014/03/02', SaleAmount: 6400, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Nevada', StoreCity: 'Reno', }, }, { ID: 88, OrderNumber: 198746, OrderDate: '2014/05/09', SaleAmount: 15700, Terms: '30 Days', Employee: 'Todd Hoffman', CustomerInfo: { StoreState: 'Colorado', StoreCity: 'Denver', }, }, { ID: 91, OrderNumber: 214222, OrderDate: '2014/02/08', SaleAmount: 11050, Terms: '30 Days', Employee: 'Clark Morgan', CustomerInfo: { StoreState: 'Arizona', StoreCity: 'Phoenix', }, }, ];
<!DOCTYPE html> <html lang="en"> <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=5.0" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/24.2.3/css/dx.light.css" /> <link rel="stylesheet" type="text/css" href="styles.css" /> <script src="https://unpkg.com/core-js@2.6.12/client/shim.min.js"></script> <script src="https://unpkg.com/systemjs@0.21.3/dist/system.js"></script> <script type="text/javascript" src="config.js"></script> <script type="text/javascript"> System.import("./index.tsx"); </script> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="app"></div> </div> </body> </html>
.demo-container { height: 570px; } #gridContainer { height: 440px; } .dx-filterbuilder-overlay .dx-scrollable-container { max-height: 400px; }

The intergrated filter builder is displayed in a pop-up window (the DevExtreme Popup component). Its default configuration is defined automatically, but you can change it in the filterBuilderPopup object. In this example, this object is used to specify the position of the pop-up window.