FlexSheetは、FlexGridと同様にデータソースに連結できます。連結モードでは、連結シートを追加し、連結を使用して列を定義できます。
import * as wjGrid from '@mescius/wijmo.grid';
import * as wjFlexSheet from '@mescius/wijmo.grid.sheet';
//FlexSheetを初期化します
let boundSheet = new wjFlexSheet.FlexSheet('#boundSheet');
boundSheet.addBoundSheet('国', getData(50));
boundSheet.deferUpdate(() => {
let column = boundSheet.columns.getColumn('countryId');
if (column && !column.dataMap) {
column.dataMap = buildDataMap(getCountries());
}
column = boundSheet.columns.getColumn('productId');
if (column && !column.dataMap) {
column.dataMap = buildDataMap(getProducts());
}
column = boundSheet.columns.getColumn('amount');
if (column) {
column.format = 'c2';
}
});
// インデックスをキーとして使用して、文字列配列からデータマップを構築します
function buildDataMap(items) {
let map = [];
for (let i = 0; i < items.length; i++) {
map.push({ key: i, value: items[i] });
}
return new wjGrid.DataMap(map, 'key', 'value');
}