如何解决Vaadin-Grid:全选复选框在 UI 中不起作用
问题:
要显示复选框以选择/取消选择我使用的所有 this Question。 我的代码如下所示:
Grid<CustomClass> grid;
...
// set selection mode
grid.setSelectionMode(SelectionMode.MULTI);
// make select all check Box visible
GridSelectionModel<CustomClass> selectionModel = grid.getSelectionModel();
((GridMultiSelectionModel<CustomClass>) selectionModel)
.setSelectAllCheckBoxVisibility(SelectAllCheckBoxVisibility.VISIBLE);
问题是,如您所见,该复选框在 UI 中不起作用:
如果我使用以下代码记录所选项目,则复选框按预期工作
grid.addSelectionListener(l -> {
log.info("selected: " + l.getAllSelectedItems().size());
});
问题:
如何才能使复选框在 UI 中也能正常工作?
解决方法
我发现在 UI 中更新复选框的解决方案是在侦听器中添加 dataPovider.refreshAll()
。
解决方案代码:
grid.addSelectionListener(l -> {
...
dataPovider.refreshAll();
...
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。