2016-02-04 73 views
-1

我有一個DataGridView與三個DataGridViewComboBoxColumns。默認情況下,它們的DropDownStyle是DropDownList,但我希望它是DropDown。我可以在DataGridView的EditingControlShowing方法中將類型更改爲DropDown,但是這是在程序啓動並選擇ComboBox之後。我已經在DataGridView的CellValidating方法中有代碼,允許我爲這些ComboBoxColumns添加新值,但是如果不雙擊它,我就無法編輯ComboBox。以下是一些當前引發InvalidCastException的代碼。在啓動時設置DataGridViewComboBoxColumn的DropDownStyle?

Dim column As New DataGridViewComboBoxColumn() 
     column.Name = "Name" 
     column.HeaderText = "Name" 
     column.DisplayMember = "Name" 
     column.ValueMember = "Name" 
     column.DataSource = DataTable 
     DataGridView1.Columns.Insert(15, column) 
     For i = 0 To column.Items.Count - 1 
      Dim cb As ComboBox = CType(column.Items(i), ComboBox) 
      If (cb IsNot Nothing) Then 
       cb.DropDownStyle = ComboBoxStyle.DropDown 
      End If 
     Next 

回答

0

要設置DataGridViewComboBoxColumnDropDownStyle,你可以用DataGridViewComboBoxCell設置DataGridViewComboBoxColumn.CellTemplate屬性。您可以使用屬性DisplayStyle設置模板DataGridViewComboBoxCell的下拉樣式。

+0

我已經實現了類似的東西。我將ComboBoxColumn的DisplayStyle設置爲Nothing,並且它看起來更好,儘管它隱藏了下拉箭頭,直到您單擊單元格。你的方法是否仍然顯示下拉箭頭? –

相關問題