我有一個(gè)具有以下層的 NatTable 組件:視口層選擇層行隱藏顯示層ColumnGroupExpandCollapseLayerColumnHideShowLayer數(shù)據(jù)層當(dāng)復(fù)選框選擇更改時(shí),我需要顯示/隱藏特定列。為此,我使用 NatTable 組件提供的 #doCommand() 方法:if(selection) { nattable.doCommand(new ColumnShowCommand(nattable, COLUMN_INDEX));} else { nattable.doCommand(new ColumnHideCommand(nattable, COLUMN_INDEX+1));}一切正常,除了選擇表中的所有項(xiàng)目并執(zhí)行 ColumnHideCommand 的情況。在這種特定情況下,整個(gè)表格內(nèi)容都會(huì)消失。如果表中沒(méi)有選擇,或者沒(méi)有選擇所有元素,那么一切正常。如果您知道那里發(fā)生了什么,或者您以前是否遇到過(guò)此類問(wèn)題,請(qǐng)告訴我。我對(duì) NatTables 的經(jīng)驗(yàn)非常有限,所以如果您需要任何其他信息,請(qǐng)告訴我。謝謝!
1 回答

當(dāng)年話下
TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊
這是SelectionLayer
支持基于列選擇的多列隱藏操作的功能。AColumnHideCommand
被消耗,而是MultiColumnHideCommand
基于完全選擇的列創(chuàng)建和執(zhí)行。負(fù)責(zé)的代碼位于SelectionLayer#handleColumnHideCommand(ColumnHideCommand)
。該方法受到保護(hù),因此如果您不需要該功能,因?yàn)槟鷥H支持以編程方式隱藏/顯示列而不是通過(guò)用戶執(zhí)行的 UI,您可以覆蓋該方法以簡(jiǎn)單地執(zhí)行 asuper.doCommand(command);
而無(wú)需檢查選擇。
添加回答
舉報(bào)
0/150
提交
取消