作成日: 2021/09/10 最終更新日: 2021/09/10
文書種別
不具合
状況
修正済み
詳細
BooleanChecker列のヘッダのチェックボックスON/OFFを切り替えた場合、各行でcellEditEndedイベントは発生しません。
回避方法
この問題はバージョン5.20211.781で修正されました。
修正版を適用しない場合の回避方法は次の通りです。
セル編集時にチェックボックス列の値を記録しておき、BooleanChecker.itemCheckedイベントでチェックボックスの値が変化した時だけFlexGrid.onCellEditEndedメソッドを実行します。
// cellEditEndedイベント
flexGrid.cellEditEnded.addHandler(function(s, e) {
checks[e.row] = flexGrid.getCellData(e.row, e.col);
console.log('flexGrid_cellEditEnded', e.row, e.col);
});
// チェックボックス列の値
var checks = Array(5);
for (r = 0; r < flexGrid.rows.length; r++) {
checks[r] = flexGrid.getCellData(r, 2);
}
// BooleanCheckerクリック時の処理
BooleanChecker.itemChecked.addHandler(function(s, e) {
for (r = 0; r < flexGrid.rows.length; r++) {
// チェックボックスの値が変更された時だけcellEditEndedイベントを発生させる
if (flexGrid.getCellData(r, s.column.index) != checks[r]) {
flexGrid.onCellEditEnded(new wijmo.grid.CellRangeEventArgs(flexGrid.cells, new wijmo.grid.CellRange(r, s.column.index)));
}
}
});