Full row editing is for when you want all cells in the row to become editable at the same time. This gives the impression to the user that the record the row represents is being edited.
To enable full row editing, set the grid option editType = 'fullRow'
.
If using custom cell editors, the cell editors will work in the exact same way with the following additions:
focusIn
: If your cell editor has afocusIn()
method, it will get called when the user tabs into the cell. This should be used to put the focus on the particular item to be focused, e.g. thetextfield
within your cell editor.focusOut
: If your cell editor has afocusOut()
method, it will get called when the user tabs out of the cell. There is no intended use for this; it's just there to complement thefocusIn()
method.- Events: When a row stops editing, the
cellValueChanged
event gets called for each column androwValueChanged
gets called once for the row.
Full Row Edit and Popup Editors
Full row editing is not compatible with popup editors. This is because a) the grid would look confusing to pop up an editor for each cell in the row at the same time and b) the complexity of navigation and popup is almost impossible to model, so the grid and your application code would be messy and very error prone. If you are using full row edit, then you are prevented from using popup editors.
This does not mean that you cannot show a popup from your 'in cell' editor - you are free to do that - however the responsibility of showing and hiding the popup belongs with your editor. You may want to use the grid's focus events to hide the popups when the user tabs or clicks out of the cell.
Example: Full Row Edit
The example below shows full row editing. In addition to standard full row editing, the following should also be noted:
- The 'Price' column has a custom editor demonstrating how you should implement the
focusIn()
method. BothfocusIn()
andfocusOut()
for this editor are logged to the console. Note thatfocusIn()
andfocusOut()
are only called when the user is tabbing between cells when editing, they are not called as the user double clicks on a cell to start editing that cell, or the user finishes editing that cell by e.g. hitting the ↵ Enter key. - Pressing ⇥ Tab / ⇧ Shift & ⇥ Tab while editing will move the focus between the cells on the editing row. Read only cells will be focusable while the row is in edit mode.
- The 'Suppress Navigable' column is not navigable using ⇥ Tab / ⇧ Shift & ⇥ Tab. In other words, when tabbing around the grid, you cannot tab onto this cell.
- The Read Only column is not editable, so when the row goes into edit mode, the cell in the Read Only column cannot be edited.
- The button will start editing line two. It uses the API to start editing a cell, however the result is that the whole row will become editable starting with the specified cell.
cellValueChanged
androwValueChanged
events are logged to console.