developer guide
Data Grid Keyboard Shortcuts and Navigation
Everything the grid does is reachable from the keyboard, with one cell in the tab order and the arrow keys moving inside it, so a virtualised table of a million rows stays navigable without a mouse. The full key map is here.
Developer guide › Accessibility and keyboard › Data Grid Keyboard Shortcuts and Navigation
Keyboard
Press ? in the grid to see this list in the product. The overlay is generated from
the same bindings the grid implements, so it cannot drift from them, and it shows
Cmd rather than Ctrl on a Mac, the grid reads either, so that is what
you will actually press. Escape closes it and focus returns where it was. Set
shortcuts: false if you want ? for something else.
| Keys | Does |
|---|---|
| Arrows | Move the focused cell. |
| Shift + arrows | Extend the range. |
| Ctrl/Cmd + Shift + arrows | Open a second range at the focused cell, keeping the first; further presses extend it. |
| Ctrl/Cmd + C, V, D | Copy, paste, fill down. |
| Delete / Backspace | Clear the selected cells. |
| Enter | Start editing; commit and step down. |
| Tab | Commit and step across. |
| Escape | Cancel the edit; restore a maximised grid once nothing else wants it. Coming back from full screen, whether by Escape or the rail's restore button, puts focus back on the cell you were on, not on the page. |
| Ctrl/Cmd + F | Open the find bar; in it, Enter / Shift+Enter step through the matches and Escape closes. |
| Space | Toggle the row's selection. |
| Home / End, Page Up / Down | Jump; with Ctrl, to the ends of the grid. |
| Ctrl/Cmd + Alt + H | Move focus to the column heading. On a heading, ArrowLeft / ArrowRight move between headings, Enter or Space sort by the column (Shift to add it to the sort), Alt + arrows resize, Shift + arrows move the column, Alt + ArrowDown opens the column menu, and ArrowDown or Escape return you to the data. The full list is in the accessibility guide. |
None of these fire while you are typing into an input, a filter box, an open editor, the view-name field. The grid checks where the keystroke came from before claiming it, which sounds obvious and is the sort of thing that is usually wrong.
A key a heading handles acts once, on the heading: Enter sorts and does not also open an editor on a body cell, ArrowRight reaches the next heading and not a cell beneath it. A key the heading declines still travels, which is how Escape reaches a maximised grid from a heading.