2013-04-29 62 views
0

TreeGrid有狀態選項在GXT 3.0.1中似乎不起作用。GXT 3 TreeGrid setStateful不起作用

我使用
setStateful(true);
setStateId("state-id");

但狀態不保存。 我不使用自定義StateProvider,所以我期望狀態被存儲在cookie中,但沒有任何內容。

更新:

我花了一些時間看源代碼,它看起來像我需要創建一個自定義的StateManager處理的TreeGrid狀態。

似乎很奇怪,因爲在GXT 2.2.x中它已經足夠調用setStateful(true),組件將在更改時保存它的狀態。

任何幫助,高度讚賞。

回答

1

默認情況下,GXT使用CookieProvider初始化StateManager。其實很多關於StateManager的答案可以在這裏找到http://www.sencha.com/blog/ext-gwt-3-0-state-api 但是在你的特定情況下,你必須添加狀態處理程序來重新加載coook的compoment屬性。類似這樣的:

new GridStateHandler<Row>(treeGrid, treeGrid.getStateId()).loadState(); 
+0

感謝您的回答。該解決方案有效,但GridStatehandler不會對樹網格中的展開/摺疊事件做出反應。所以,我將不得不延長它。 – Andrew 2013-04-29 10:57:32