当 SelectionMode 为 MULTI 时,隐藏 Flow 组件 Grid 中的 "Select All" 复选框(Vaadin 21)

Hide the "Select All" checkbox in the Flow component Grid, when SelectionMode is MULTI (Vaadin 21)

当您在 Vaadin v21 中创建一个 Grid 组件并切换到 multiselect 模式时,顶部有一个“select all”复选框。如何禁用它?网格的默认行为似乎不同,因此 Vaadin 版本之间的解决方案不同。

Grid<Person> grid = new Grid<>(Person.class, false);
grid.setSelectionMode(Grid.SelectionMode.MULTI);
grid.setItems(personRepository.findAll());

您必须从网格中获取 SlectionModel,以启用或禁用“Select 全部”复选框:

Grid<Person> grid = new Grid<>(Person.class, false);
grid.setSelectionMode(Grid.SelectionMode.MULTI);
((GridMultiSelectionModel<?>) grid.getSelectionModel())
      .setSelectAllCheckboxVisibility(
            GridMultiSelectionModel.SelectAllCheckboxVisibility.HIDDEN
      );
grid.setItems(personRepository.findAll());