2016-06-17 100 views
0

我試圖添加空行null ComboBoxItem中的值smartgwt它已綁定到來自數據庫的數據源。smartgwt在ComboBoxItem中添加空白行或允許用戶設置空白值

我已經嘗試過服務層,控制器層和數據庫的更改,但這並不是我的老大推薦的。

我只需要對UI layer進行更改。

+0

「不能共享代碼」 ?真?你完全無法想出一個能夠證明你的問題的[mcve]嗎?如果是這樣,那麼你真的不能指望任何人提出一個答案,可以嗎? –

+0

@TobySpeight對這個傢伙不那麼難。我不認爲需要代碼來正確回答這個問題,因爲它是一個通用的'如何做'的問題,而不是'我的代碼有什麼問題'。 – carlossierra

回答

2

查看Special Values ComboBox SmartGWT展示演示。我認爲它做到了你想要的。

下面是從演示的代碼採取的(雖然我建議你看一下它,並研究代碼,看看什麼是最好的你的情況)的提取物

LinkedHashMap<String,String> hashMap = new LinkedHashMap<String,String>(); 
hashMap.put("**EmptyValue**", "None"); 
hashMap.put("-1", "Not Applicable"); 

ComboBoxItem comboBoxItem = new ComboBoxItem(); 
comboBoxItem.setName("filteredCombo"); 
comboBoxItem.setTitle("Choose an item (ComboBox)"); 
comboBoxItem.setAddUnknownValues(false); 
comboBoxItem.setOptionDataSource(ItemSupplyXmlDS.getInstance()); 
comboBoxItem.setDisplayField("itemName"); 
comboBoxItem.setValueField("itemID"); 
comboBoxItem.setPickListWidth(300); 
comboBoxItem.setPickListFields(skuField, itemNameField); 
comboBoxItem.setSpecialValues(hashMap); 
comboBoxItem.setSeparateSpecialValues(true); 
+0

嘿@carlossierra,你的解決方案似乎是爲我工作。但在我的smartgwt這些方法setSpecialValues(LinkedHashMap hashMap);和setSeparateSpecialValues(true);不存在,可能是由於版本3.0p。我對嗎 ? – Amolb

+0

我對v3.0p不是很熟悉,但我想這可能是真的。你不能升級到最新版本嗎? – carlossierra

+0

嗨@carlossierra,_此功能版本6.0_。我與團隊討論過。不,我們無法升級到最新版本。再次停留在起始位置。有沒有其他方式可以操縱數據源或通過其他方式。 – Amolb