0
我已經創建了可以添加所有單元格的可編輯網格。現在我想檢查一些條件,並用另一個單元格小部件替換單元格或列。例如,如果我已經定義了一列EditTextCell,基於一個布爾條件,我必須改變這個列有選擇單元(組合框)。如何實現這一目標?GWT可編輯網格:如何動態替換單元格窗口小部件?
我已經創建了可以添加所有單元格的可編輯網格。現在我想檢查一些條件,並用另一個單元格小部件替換單元格或列。例如,如果我已經定義了一列EditTextCell,基於一個布爾條件,我必須改變這個列有選擇單元(組合框)。如何實現這一目標?GWT可編輯網格:如何動態替換單元格窗口小部件?
有三種方法可以做到這一點:
使用CompositeCell
與EditTextCell
和SelectionCell
和覆蓋CompositeCell
的渲染方法來呈現無論是EditTextCell
或基於布爾標誌SelectionCell
那你存儲在綁定到單元格的DTO
中。
例如,創建一個自定義單元格,擴展爲AbstractEditableCell
(請參閱此tutorial)並自行實現此功能。您可以查看SelectionCell和EditTextCell的代碼並複製大部分代碼。在渲染方法中,你必須顯示一個下拉列表或者只是一個基於布爾標誌的文本。
延長EditTextCell
或SelectionCell
並實施缺失的功能。好處是你可以重新使用一些渲染方法,而且你不必自己編寫完整的渲染代碼。