2013-07-17 53 views
0

我正在用C#開發一個Windows應用程序。如何根據組合框中的條件禁用項目?

用戶必須在組合框中選擇一些列出的值。這些值將被添加到數據庫。當相同的用戶登錄並選擇組合框時,已經選擇的值應該是可見的,但不應該被選擇....

我提到了各種網站。所有說明改變現有價值的顏色......但這還不夠。我需要禁用這些值...是否有任何選項可以執行此操作。

注意:我正在從數據庫表中填充組合框項目。

+0

那麼你能不能過濾掉這些物品,而根本不顯示它們? – V4Vendetta

+0

否@ V4Vendetta,我需要顯示所有這些項目。但要禁用現有的項目.... – ognale88

+0

當用戶選擇一個現有值時會發生什麼? – amitfr

回答

1

您可以設置ComboBox.SelectedIndex = -1爲您的期望值;

的代碼沒有進行測試,但這樣的事情會幫助你

if (combobox.selectedIndex == (Index of your value)) 
{ 
    combobox.selectedIndex = -1; 
} 

這樣,如果你嘗試選擇該項目將選定的索引設置爲-1,你將無法選擇項目。

+0

它的工作......但我需要一些東西得到禁用(即)即使用戶選擇現有項目。 – ognale88

0

Create WinForms ComboBox with non-selectable items

雖然從數據庫中消磨值設置可選屬性true或false下面的鏈接可能是有益的,在SelectedIndexChanged事件項目的selectedIndex設置爲-1。

不要忘了標記爲答案,如果它對你有幫助。

注意:在執行此操作之前,請確保需要顯示這些項目。如果不需要,只需過濾它們並綁定剩餘的值。

相關問題