初学Vaadin,基于Vaadin8实现一个根据单元格的点击事件改变Grid单元格颜色的功能,踩了很多坑,来记录一下。
首先,从官网(链接: link.)可以找到改变一行单元格的样式的方法是
grid.setStyleGenerator(cellRef -> "v-grid-cell-red");
改变一列单元格的颜色的方法
getColumn().setStyleGenerator(cellRef -> "v-grid-cell-green");
但是同样是设置颜色的样式,在scss的定义样式的写法却不一样,如果你要改变一行的单元格,在scss的定义是
.v-grid-cell-red > td {
background-color: red !important
}
而改变一个单元格的样式是
.v-grid-cell-green {
background-color: green !important
}
没错,就是去掉上面的 > td就可以了,大概是因为单元格是在td里面而不是上一级?~