2011-07-20 13 views
4

CellTree具有一個構造函數,它接受TreeModel。我無法通過setter設置樹模型。如何使用後端數據填充CellTree

我通過異步rpc調用獲取樹的數據,這個調用在創建與持有樹的視圖相對應的主持人時觸發,但這意味着也創建了視圖,而沒有填充樹模型必要的數據。

當數據不會返回我在模型上設置根節點,但沒有根已經創建的模型,因此它不會更新...

我已經走了這條路,因爲我想要更好地控制樹節點的渲染。

兩個可能的解決方案......

  1. 握住渲染視圖,直到取指已經回來了,這樣創建樹時,該模型具有的所有信息 - 我該怎麼做呢?

  2. 一旦數據回來,並在模型上設置,告訴樹更新...我該怎麼做?

回答

3
  1. 當你創建一個視圖,你必須設置你的CellTreeListDataProvider
  2. 當你得到你的數據拋出RPC調用你只更新ListDataProvider,你的CellTree將被更新並重新自動呈現。

請閱讀Providing Dynamic Data開發人員指南 - 細胞小工具。下面是快速報價:

ListDataProvider將您的單元小部件綁定到java.util.List。對內部列表的任何更改(可通過getList()訪問)都將反映在視圖中。視圖在當前事件塊結束時更新,因此您可以進行多個同步更改而不會導致視圖的多次刷新。

0

使用ListDataProvider或AsyncDataProvider(如果您想動態更新數據表而不是一次加載所有內容)將完全適合您。

相關問題