1

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 のバグのように見えますが、もっと詳しい説明があるかもしれません。

4

1 に答える 1

7

getValue確認していませんが、セルの開口部は呼び出されるまでにすでに生成されている可能性が高いためsetCellStyleNames、列の残りのセルにのみ適用されます。

これを行う正しい方法は、列をオーバーライド getCellStyleNamesしてCSSクラス名を返すか、セル値に依存しないことです。


ところで、それからあなたはそれから取るに足らないIdentityColumnようになるので拡張することができますgetValue

于 2012-11-13T13:51:09.640 に答える