GridApi Interface
The full grid API.
Import
import { GridApi } from '@mui/x-data-grid-premium';
// or
import { GridApi } from '@mui/x-data-grid-pro';
Properties
Name | Type | Description |
---|---|---|
addRowGroupingCriteria | (groupingCriteriaField: string, groupingIndex?: number) => void | Adds the field to the row grouping model. |
applySorting | () => void | Applies the current sort model to the rows. |
commitCellChange | (params: GridCommitCellChangeParams, event?: MuiBaseEvent) => boolean | Promise<boolean> | Updates the field corresponding to the given id with the value stored in the edit row model. |
commitRowChange | (id: GridRowId, event?: MuiBaseEvent) => boolean | Promise<boolean> | Updates the row corresponding to the given id with the values stored in the edit row model. |
deleteFilterItem | (item: GridFilterItem) => void | Deletes a GridFilterItem. |
exportDataAsCsv | (options?: GridCsvExportOptions) => void | Downloads and exports a CSV of the grid's data. |
exportDataAsExcel | (options?: GridExcelExportOptions) => Promise<void> | Downloads and exports an Excel file of the grid's data. |
exportDataAsPrint | (options?: GridPrintExportOptions) => void | Print the grid's data. |
exportState | (params?: GridExportStateParams) => InitialState | Generates a serializable object containing the exportable parts of the DataGrid state. These values can then be passed to the initialState prop or injected using the restoreState method. |
forceUpdate | () => void | Forces the grid to rerender. It's often used after a state update. |
getAllColumns | () => GridStateColDef[] | Returns an array of GridColDef containing all the column definitions. |
getAllRowIds | () => GridRowId[] | Gets the list of row ids. |
getCellElement | (id: GridRowId, field: string) => HTMLDivElement | null | Gets the underlying DOM element for a cell at the given id and field . |
getCellMode | (id: GridRowId, field: string) => GridCellMode | Gets the mode of a cell. |
getCellParams | <V = unknown, R extends GridValidRowModel = any, F = V>(id: GridRowId, field: string) => GridCellParams<V, R, F> | Gets the GridCellParams object that is passed as argument in events. |
getCellValue | <V extends any = any>(id: GridRowId, field: string) => V | Gets the value of a cell at the given id and field . |
getColumn | (field: string) => GridStateColDef | Returns the GridColDef for the given field . |
getColumnHeaderElement | (field: string) => HTMLDivElement | null | Gets the underlying DOM element for the column header with the given field . |
getColumnHeaderParams | (field: string) => GridColumnHeaderParams | Gets the GridColumnHeaderParams object that is passed as argument in events. |
getColumnIndex | (field: string, useVisibleColumns?: boolean) => number | Returns the index position of a column. By default, only the visible columns are considered. Pass false to useVisibleColumns to consider all columns. |
getColumnPosition | (field: string) => number | Returns the left-position of a column relative to the inner border of the grid. |
getColumnsMeta | () => GridColumnsMeta | Returns the GridColumnsMeta for each column. |
getDataAsCsv | (options?: GridCsvExportOptions) => string | Returns the grid data as a CSV string. This method is used internally by exportDataAsCsv . |
getDataAsExcel | (options?: GridExcelExportOptions) => Promise<Excel.Workbook> | null | Returns the grid data as an exceljs workbook. This method is used internally by exportDataAsExcel . |
getEditRowsModel | () => GridEditRowsModel | Gets the edit rows model of the grid. |
getExpandedDetailPanels | () => GridRowId[] | Returns the rows whose detail panel is open. |
getLocaleText | <T extends GridTranslationKeys>(key: T) => GridLocaleText[T] | Returns the translation for the key . |
getPinnedColumns | () => GridPinnedColumns | Returns which columns are pinned. |
getRootDimensions | () => GridDimensions | null | Returns the dimensions of the grid |
getRow | <R extends GridValidRowModel = any>(id: GridRowId) => R | null | Gets the row data with a given id. |
getRowElement | (id: GridRowId) => HTMLDivElement | null | Gets the underlying DOM element for a row at the given id . |
getRowGroupChildren | (params: GridRowGroupChildrenGetterParams) => GridRowId[] | Gets the rows of a grouping criteria. Only contains the rows provided to the grid, not the rows automatically generated by it. |
getRowIdFromRowIndex | (index: number) => GridRowId | Gets the GridRowId of a row at a specific index.The index is based on the sorted but unfiltered row list. |
getRowIndex | (id: GridRowId) => number | Gets the row index of a row with a given id. The index is based on the sorted but unfiltered row list. |
getRowIndexRelativeToVisibleRows | (id: GridRowId) => number | Gets the index of a row relative to the rows that are reachable by scroll. |
getRowMode | (id: GridRowId) => GridRowMode | Gets the mode of a row. |
getRowModels | () => Map<GridRowId, GridRowModel> | Gets the full set of rows as Map<GridRowId, GridRowModel>. |
getRowNode | (id: GridRowId) => GridRowTreeNodeConfig | null | Gets the row node from the internal tree structure. |
getRowParams | (id: GridRowId) => GridRowParams | Gets the GridRowParams object that is passed as argument in events. |
getRowsCount | () => number | Gets the total number of rows in the grid. |
getScrollPosition | () => GridScrollParams | Returns the current scroll position. |
getSelectedRows | () => Map<GridRowId, GridRowModel> | Returns an array of the selected rows. |
getSortedRowIds | () => GridRowId[] | Returns all row ids sorted according to the active sort model. |
getSortedRows | () => GridRowModel[] | Returns all rows sorted according to the active sort model. |
getSortModel | () => GridSortModel | Returns the sort model currently applied to the grid. |
getVisibleColumns | () => GridStateColDef[] | Returns the currently visible columns. |
getVisibleRowModels | () => Map<GridRowId, GridRowModel> | Returns a sorted Map containing only the visible rows. |
hideColumnMenu | () => void | Hides the column menu that is open. |
hideFilterPanel | () => void | Hides the filter panel. |
hidePreferences | () => void | Hides the preferences panel. |
isCellEditable | (params: GridCellParams) => boolean | Controls if a cell is editable. |
isColumnPinned | (field: string) => GridPinnedPosition | false | Returns which side a column is pinned to. |
isRowSelectable | (id: GridRowId) => boolean | Determines if a row can be selected or not. |
isRowSelected | (id: GridRowId) => boolean | Determines if a row is selected or not. |
pinColumn | (field: string, side: GridPinnedPosition) => void | Pins a column to the left or right side of the grid. |
publishEvent | GridEventPublisher | Emits an event. |
removeRowGroupingCriteria | (groupingCriteriaField: string) => void | Remove the field from the row grouping model. |
resetRowHeights | () => void | Forces the recalculation of the heights of all rows. |
resize | () => void | Triggers a resize of the component and recalculation of width and height. |
restoreState | (stateToRestore: InitialState) => void | Inject the given values into the state of the DataGrid. |
scroll | (params: Partial<GridScrollParams>) => void | Triggers the viewport to scroll to the given positions (in pixels). |
scrollToIndexes | (params: Partial<GridCellIndexCoordinates>) => boolean | Triggers the viewport to scroll to the cell at indexes given by params .Returns true if the grid had to scroll to reach the target. |
selectRow | (id: GridRowId, isSelected?: boolean, resetSelection?: boolean) => void | Change the selection state of a row. |
selectRowRange | (range: { startId: GridRowId; endId: GridRowId }, isSelected?: boolean, resetSelection?: boolean) => void | Change the selection state of all the selectable rows in a range. |
selectRows | (ids: GridRowId[], isSelected?: boolean, resetSelection?: boolean) => void | Change the selection state of multiple rows. |
setAggregationModel | (model: GridAggregationModel) => void | Sets the aggregation model to the one given by model . |
setCellFocus | (id: GridRowId, field: string) => void | Sets the focus to the cell at the given id and field . |
setCellMode | (id: GridRowId, field: string, mode: GridCellMode) => void | Sets the mode of a cell. |
setColumnHeaderFocus | (field: string, event?: MuiBaseEvent) => void | Sets the focus to the column header at the given field . |
setColumnIndex | (field: string, targetIndexPosition: number) => void | Moves a column from its original position to the position given by targetIndexPosition . |
setColumnVisibility | (field: string, isVisible: boolean) => void | Changes the visibility of the column referred by field . |
setColumnVisibilityModel | (model: GridColumnVisibilityModel) => void | Sets the column visibility model to the one given by model . |
setColumnWidth | (field: string, width: number) => void | Updates the width of a column. |
setDensity | (density: GridDensity, headerHeight?: number, rowHeight?: number, maxDepth?: number) => void | Sets the density of the grid. |
setEditCellValue | (params: GridEditCellValueParams, event?: MuiBaseEvent) => Promise<boolean> | void | Sets the value of the edit cell. Commonly used inside the edit cell component. |
setEditRowsModel | (model: GridEditRowsModel) => void | Set the edit rows model of the grid. |
setExpandedDetailPanels | (ids: GridRowId[]) => void | Changes which rows to expand the detail panel. |
setFilterLinkOperator | (operator: GridLinkOperator) => void | Changes the GridLinkOperator used to connect the filters. |
setFilterModel | (model: GridFilterModel, reason?: GridControlledStateReasonLookup['filter']) => void | Sets the filter model to the one given by model . |
setPage | (page: number) => void | Sets the displayed page to the value given by page . |
setPageSize | (pageSize: number) => void | Sets the number of displayed rows to the value given by pageSize . |
setPinnedColumns | (pinnedColumns: GridPinnedColumns) => void | Changes the pinned columns. |
setQuickFilterValues | (values: any[]) => void | Set the quick filter values ot the one given by values |
setRowChildrenExpansion | (id: GridRowId, isExpanded: boolean) => void | Expand or collapse a row children. |
setRowGroupingCriteriaIndex | (groupingCriteriaField: string, groupingIndex: number) => void | Sets the grouping index of a grouping criteria. |
setRowGroupingModel | (model: GridRowGroupingModel) => void | Sets the columns to use as grouping criteria. |
setRowIndex | (rowId: GridRowId, targetIndex: number) => void | Moves a row from its original position to the position given by targetIndex . |
setRowMode | (id: GridRowId, mode: GridRowMode) => void | Sets the mode of a row. |
setRows | (rows: GridRowModel[]) => void | Sets a new set of rows. |
setSelectionModel | (rowIds: GridRowId[]) => void | Updates the selected rows to be those passed to the rowIds argument.Any row already selected will be unselected. |
setSortModel | (model: GridSortModel) => void | Updates the sort model and triggers the sorting of rows. |
showColumnMenu | (field: string) => void | Display the column menu under the field column. |
showError | (props: any) => void | Displays the error overlay component. |
showFilterPanel | (targetColumnField?: string) => void | Shows the filter panel. If targetColumnField is given, a filter for this field is also added. |
showPreferences | (newValue: GridPreferencePanelsValue) => void | Displays the preferences panel. The newValue argument controls the content of the panel. |
sortColumn | (column: GridColDef, direction?: GridSortDirection, allowMultipleSorting?: boolean) => void | Sorts a column. |
startCellEditMode | any | Puts the cell corresponding to the given row id and field into edit mode. |
startRowEditMode | any | Puts the row corresponding to the given id into edit mode. |
state | State | Property that contains the whole state of the grid. |
stopCellEditMode | any | Puts the cell corresponding to the given row id and field into view mode and updates the original row with the new value stored. If params.ignoreModifications is false it will discard the modifications made. |
stopRowEditMode | any | Puts the row corresponding to the given id and into view mode and updates the original row with the new values stored. If params.ignoreModifications is false it will discard the modifications made. |
subscribeEvent | <E extends GridEventsStr>(event: E, handler: GridEventListener<E>, options?: EventListenerOptions) => () => void | Registers a handler for an event. |
toggleColumnMenu | (field: string) => void | Toggles the column menu under the field column. |
toggleDetailPanel | (id: GridRowId) => void | Expands or collapses the detail panel of a row. |
unpinColumn | (field: string) => void | Unpins a column. |
unstable_getAllGroupDetails | () => GridColumnGroupLookup | Returns the column group lookup. |
unstable_getColumnGroupPath | (field: string) => GridColumnGroup['groupId'][] | Returns the id of the groups leading to the requested column. The array is ordered by increasing depth (the last element is the direct parent of the column). |
unstable_replaceRows | (firstRowToReplace: number, newRows: GridRowModel[]) => void | Replace a set of rows with new rows. |
unstable_setPinnedRows | (pinnedRows?: GridPinnedRowsProp) => void | Changes the pinned rows. |
updateColumn | (col: GridColDef) => void | Updates the definition of a column. |
updateColumns | (cols: GridColDef[]) => void | Updates the definition of multiple columns at the same time. |
updateRows | (updates: GridRowModelUpdate[]) => void | Allows to updates, insert and delete rows in a single call. |
upsertFilterItem | (item: GridFilterItem) => void | Updates or inserts a GridFilterItem. |
upsertFilterItems | (items: GridFilterItem[]) => void | Updates or inserts many GridFilterItem. |