是否有人知道是否可以根据显示行的某些值向CellTable添加列?
通常使用addColumn但仅在getValue方法中启用对行属性的访问。我需要提前获得此访问权限,以决定是向列添加一些值还是将其空白。
答案 0 :(得分:3)
答案是编写扩展适当单元类的自定义单元类(随GWT提供)。然后在render方法中,列的内容可能为空或取决于显示/呈现对象的值。 E.g。
private class VersionCell<T> extends ActionCell<MovieDTO> {
public VersionCell(String text, Delegate<MovieDTO> delegate) {
super(text, delegate);
}
@Override
public void render(MovieDTO m, Object key, SafeHtmlBuilder sb) {
if (m != null && m.getId() != -1) {
super.render(m, key, sb);
} else if (m != null && m.getId() == -1) {
sb.append(new SafeHtmlBuilder().appendHtmlConstant("").toSafeHtml());
}
}
}