使用DataGridViewComboBoxColumn,目标是使ComboBoxes接受用户的新项目以及选择已存在项目的可能性。如何使DataGridViewComboBoxColumn的组合框接受用户新项目?
我知道使用EditingControlShowing的的DataGridView的事件改变DataGridViewComboBoxEditingControl的DropDownStyle在运行时允许这样做,但我不知道这是否可以以较低的完成水平。
我现在正在做的是延长DataGridViewComboBoxColumn,的DataGridViewComboBoxCell和DataGridViewComboBoxEditingControl,希望改变使用编辑的DropDownStyle在我实例的那一刻。到目前为止,没有运气。
的调试器显示正在执行的权利分配,但尽管如此,在DropDownStyle是在EditingControlShowing弹出(使用事件用于调试目的)作为DropBoxList,不升降梭箱,这是意图。
下面就跟随类:
Public Class DataGridViewComboBoxColumnALT
Inherits System.Windows.Forms.DataGridViewComboBoxColumn
Public Sub New()
Me.CellTemplate = New DataGridViewComboBoxCellALT
End Sub
End Class
Public Class DataGridViewComboBoxCellALT
Inherits System.Windows.Forms.DataGridViewComboBoxCell
Public Overrides ReadOnly Property EditType() As Type
Get
Return GetType(DataGridViewComboBoxEditingControlALT)
End Get
End Property
End Class
Public Class DataGridViewComboBoxEditingControlALT
Inherits System.Windows.Forms.DataGridViewComboBoxEditingControl
Implements System.Windows.Forms.IDataGridViewEditingControl
Public Sub New()
MyBase.New()
Me.DropDownStyle = ComboBoxStyle.DropBox
End Sub
End Class
这是一个可能性,谢谢,尽管我希望成千上万的细胞在这个DataGridView中,不是所有的组合框,但尽管如此,很多定位。 – didi