ユーザーがデータセットを直接編集してデータ行の値を修正したり、追加することができる。 まず、既存の行を修正する方法から説明する。
修正しようとする行に含まれたデータセルにフォーカスを移動して、 F2キーを打てばカラムに設定されたエディターが表示される。エディターが表示された後該当するセルが修正可能な状態なら編集を始められる。 又は、テキストを入力してエディターを表示したのと同時に入力を始めることもできる。 エディターが表示される直前にonShowEditorイベントが発生するが、イベントハンドラの内で明示的にfalseをリターンすれば、 エディターが表示されずにセルの修正を進行することができない。
セルの編集を完了するためにはEnterキーを打つか、Tab及び方向キー、またはマウスクリックで入力中であるセルから抜ければいい。 セルの編集が完了すればonEditCommittedイベントが発生する。 編集が正常的に完了するためにはValidationに通過しなければならない。 下のグリッドで"year"の値が2000以上になるようValidationを設定した。
基本的にDataludi Gridは行単位で編集を完了する。 つまり、行の編集を完了しなければ入力された値たちはデータセットに渡されない。 行の編集を完了するためには方向キーやマウスのクリックで行の位置を変更したり、 GridBase.commitメソッドを直接呼び出す。 行の編集が完了すればGridBase.onEditRowCommittedイベントが発生する。 修正行の場合EditOptions.updateByCellをtrueに指定すればセル単位で行の編集を完了することができる。
エディターが表示された状態でEscキーを打てばセルの編集が取消になり、onEditCanceledイベントが発生する。 また、編集中の行でエディターが表示されない時Escキーを打てば行の編集が取消になる。 行の編集が完了すればonEditRowCanceledイベントが発生する。
新しい行をインサートしようとする位置にフォーカスをセットした後Insertキーを打てば行のインサートが始まる。 セルの編集と行の編集完了UI及びイベントは行の修正と同一である。 [[c.EditOptions.insertable]がtrueで指定してからこそユーザーが行のインサートを進行することができる。 また、GridBase.insertを呼び出して行のインサートを始めることもできる。
最後の行にフォーカスがある時、下の方向キーを入力すれば行の追加が始まる。 appendableがtrueに指定されてからこそユーザーが行のインサートを進めることができる。 また、GridBase.appendを直接呼び出して行の追加を始めることもできる。