GWT cellTable单元格的动态样式

时间:2012-11-13 13:33:52

标签: css gwt celltable

我在使用GWT时遇到了问题。我正在构建一个cellTable的列,我希望单元格的样式取决于该单元格的值:

Column<MyProxy, MyProxy> editButtonColumn = new Column<MyProxy, MyProxy>(new ActionCell<MyProxy>("", new ActionCell.Delegate<MyProxy>() {
        @Override
        public void execute(MyProxy record) {
            if (object.isEditable()) {
                doSomething(record);
            }
        }
    })) {
        @Override
        public MyProxy getValue(MyProxy object) {
            if (object.isEditable()) {
                this.setCellStyleNames("editButtonCell");
            }
            return object;
        }
    };

我已经在调试模式中检查了正确应用“editButtonCell”样式。但是在生成的HTML中,每次为FIRST ROW都缺少样式......它看起来像一个GWT错误,但也许你们有更好的解释。

1 个答案:

答案 0 :(得分:7)

我没有检查过,但很可能在调用getValue时已经生成了单元格的打开,因此setCellStyleNames仅适用于列中的其余单元格。

正确的方法是覆盖列的 getCellStyleNames以返回CSS类名称,具体取决于单元格值。


顺便说一句,然后您可以IdentityColumn扩展getValue,然后变得微不足道。