2015-11-06 49 views
2

我有一個ComboBox這是我在一個SourceGrid3控制很放置,但由於某些原因,我可以在Enabled屬性未設置爲true無法啓用組合框

這是我的代碼。

ComboBox cboMyComboBox = new ComboBox(); 
cboMyComboBox.Enabled = true; 
cboMyComboBox.BeginUpdate(); 
cboMyComboBox.Items.AddRange(new object[] { "Accept", "Reject" }); 
cboMyComboBox.EndUpdate(); 
cboMyComboBox.DropDownStyle = ComboBoxStyle.DropDownList; 
SourceGrid3.Cells.Real.CellControl thisControl = new SourceGrid3.Cells.Real.CellControl(cboMyComboBox); 

myGrid[row, column] = thisControl; 

myGridSourceGrid3網格)

因爲當最後一行被執行時,Enabled值被轉向false和後續嘗試來改變它(如設置回true)某種原因唐沒有任何效果。

即使我嘗試在Visual Studio調試器中將值更改爲true,它也不會允許它,只是將其更改回false。我已經看過了ReadOnly屬性爲這個領域,但似乎並沒有成爲一個(除非我失去了一些東西),而且我不能(從NoRightToLeftYes)更改其他屬性

還有什麼事我可以檢查可能導致此控件被強制爲false

+0

是不是默認'真'?如果你沒有設置屬性,它甚至被禁用? –

+0

@FeDe是的,即使我沒有明確地將其設置爲「true」,它默認爲「true」,但是當我將它添加到網格時,它會變爲「false」... – colmde

+3

您是否嘗試過將Enabled網格上的屬性? mybe它被家長控制.. –

回答

5

問題:

如果它存在於所有UI-Elements一般屬性被設置爲Control它會通過它的價值降低到所有的子元素。

一般來說,這將覆蓋此屬性的值爲全部子控件。

解決方案:

設置Enabled,物業爲您Gridtrue,讓它 未分配在ComboBox只是刪除Enabled=false在你的網格定義。