在启动时设置DataGridViewComboBoxColumn的DropDownStyle?

时间:2016-02-04 17:54:59

标签: vb.net datagridview combobox

我有一个带有三个DataGridViewComboBoxColumns的DataGridView。默认情况下,他们的DropDownStyle是DropDownList,但我希望它是DropDown。我可以在DataGridView的EditingControlShowing方法中将类型更改为DropDown,但这是在程序启动并选择了ComboBox之后。我已经在DataGridView的CellValidating方法中有代码,允许我向这些ComboBoxColumns添加新值,但是如果不双击它就无法编辑ComboBox。这是一些当前抛出InvalidCastException的代码。

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

1 个答案:

答案 0 :(得分:0)

要设置DropDownStyle的{​​{1}},您可以将DataGridViewComboBoxColumn属性设置为DataGridViewComboBoxColumn.CellTemplate。您可以使用属性DataGridViewComboBoxCell设置模板DataGridViewComboBoxCell的下拉样式。