我正在将条件突出显示应用于TreeGrid,但是,它不会将颜色应用于行。我对Grid使用了类似的方法,它可以完美地工作。有人在TreeGrid上遇到过类似的问题吗?
代码:
通过“网格”组件按钮触发突出显示-
btnRed.addClickListener(clickEvent -> {
if (isContained(selectedItems.keySet(), systemAccessDTO)){
removeItemsRecursively(systemAccessDTO);
}else {
addItemsRecursively(systemAccessDTO);
}
updateStyles();
});
更新样式-
private void updateStyles() {
grid.setStyleGenerator(systemAccessDTO -> {
if (isContained(selectedItems.keySet(), systemAccessDTO)) {
return "red";
}
return null;
});
}
PS:Vaadin版本8.4.3
谢谢!
答案 0 :(得分:2)
我发现了问题。 vaadin中的Grid和TreeGrid类具有不同的CSS类。将其发布给有相同问题的任何人。
设置treegrid行的样式:
.v-treegrid-row.treegrid_custom_style .v-treegrid-cell {
background-color: #a8c9ff;
}
.v-treegrid-row-stripe.treegrid_custom_style .v-treegrid-cell {
background-color: #a8c9ff;
}