为了账号安全,请及时绑定邮箱和手机立即绑定

ColumnHideCommand makes the table columns

ColumnHideCommand makes the table columns

斯蒂芬大帝 2022-06-04 09:54:15
我有一个具有以下层的 NatTable 组件:视口层选择层行隐藏显示层ColumnGroupExpandCollapseLayerColumnHideShowLayer数据层当复选框选择更改时,我需要显示/隐藏特定列。为此,我使用 NatTable 组件提供的 #doCommand() 方法:if(selection) {   nattable.doCommand(new ColumnShowCommand(nattable, COLUMN_INDEX));} else {   nattable.doCommand(new ColumnHideCommand(nattable, COLUMN_INDEX+1));}一切正常,除了选择表中的所有项目并执行 ColumnHideCommand 的情况。在这种特定情况下,整个表格内容都会消失。如果表中没有选择,或者没有选择所有元素,那么一切正常。如果您知道那里发生了什么,或者您以前是否遇到过此类问题,请告诉我。我对 NatTables 的经验非常有限,所以如果您需要任何其他信息,请告诉我。谢谢!
查看完整描述

1 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

这是SelectionLayer支持基于列选择的多列隐藏操作的功能。AColumnHideCommand被消耗,而是MultiColumnHideCommand基于完全选择的列创建和执行。负责的代码位于SelectionLayer#handleColumnHideCommand(ColumnHideCommand)。该方法受到保护,因此如果您不需要该功能,因为您仅支持以编程方式隐藏/显示列而不是通过用户执行的 UI,您可以覆盖该方法以简单地执行 asuper.doCommand(command);而无需检查选择。



查看完整回答
反对 回复 2022-06-04
  • 1 回答
  • 0 关注
  • 98 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信