如何在ExtJ网格面板的列中添加“全选/取消全选”复选框?

weylhg0b  于 2022-09-26  发布在  其他
关注(0)|答案(2)|浏览(184)

我想在网格面板中的列名之前的列下添加“选择/取消选择所有列”复选框,以显示/隐藏所有列。由于网格中有大量列,所以用户希望选择全部,然后取消选中要隐藏的列,或者取消选择全部,再选中要显示的列。我使用的是ExtJS 3.4版本。
例如,在下面的示例网格中,列树下的列表中,选择/取消选择所有复选框应位于名字之前:
sample extjs grid panel
谢谢

tsm1rwdh

tsm1rwdh1#

我认为没有现成的解决方案。您可以在顶部添加一个复选框,并将所有菜单复选框设置为具有选中所有框的绑定

bind: {
    checked: '{rullForThisCheckbox || checkAllCeckboxes}'
}

然后将顶部选中的复选框设置为{checkAllCeckboxes}

lymgl2op

lymgl2op2#

您可以访问columns菜单并手动插入select/deselect all复选框。我已经测试过了,它很管用,虽然它看起来不太现成。

grid.getHeaderContainer().getMenu().add({
  xtype: 'checkboxfield',
  fieldLabel: '(de)select all',
})

相关问题