2010-12-14 32 views
2

有誰知道這是否可以添加一列到CellTable,具體取決於od顯示行的某個值?GWT CellTable - 根據行添加列

通常使用addColumn,但僅在getValue方法中啓用對行屬性的訪問。我需要早些時候獲得此訪問權限,以決定是爲列添加一些值還是將其留空。

回答

2

答案是寫延伸合適的細胞類(設置有GWT)定製細胞類。然後在render方法中,列的內容可能是空的或不依賴於顯示/渲染對象的值。例如。

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()); 
     } 
    } 
}