ユーザーはCtrl+Delキーで現在選択した行達を削除することができる。 削除を要請した行達の目録がDataSetに渡され、 データセットが実際に目録のグリッド行達に繋がった各データ行達を削除すれば結果がグリッドに反映される。
ユーザーが行を削除することが可能になるためには、まずeditOptionsのEditOptions.deletableをtrueに設定しなければならない。(デフォルト値はfalse) また、EditOptions.confirmWhenDeleteがtrue(デフォルト値)なら、 実際に削除に入る前にEditOptions.deleteMessageで指定した削除の可否を確認するダイアログボックスが表示される。
行の修正や行の追加と同様に、 データセットでデータの行達が削除になった後GridDataSet.onRowsDeletedイベントが発生し、 削除する直前にグリッドのonRowsDeletingイベントが発生する。 このイベントハンドラーの内で明示的にtrueをリターンすれば削除されない。
また、グリッドが削除の要請をデータセットに渡す前に先にonDeletingイベントが発生するが、 同様にこのイベントハンドラー内で明示的にfalseをリターンすれば行の削除が取消になる。
grdMain.onRowsDeleting = function (grid, rowIndices) {
if ($('#chkEventDeletable').is(':checked')) {
return false;
}
};
ユーザーが選択した行達をctrl+delキーで削除しようとする時、 その行達をデータセットで実際に削除する代わりに、行の状態だけ削除になった状態に変更することができる。 DataSet.softDeleteプロパティーをtrueに指定してデータ行達を削除すれば、 CREATEDである行達は CREATE_AND_DELETEDに、 他の行達はDELETEDに状態が変更になる。
以後に削除状態の行達を一気に削除するようにサーバーに要請することができる。 また、削除状態の行達を復元させることもできる。