这肯定很简单,但即使在阅读了微软规范之后,我也无法理解。
如何将DataGridViewColumn类型存储在声明的变量中?它必须提供一个类型集合,类似于为DataGridViewContentAlignment声明变量:
Dim GridAlignment as DataGridViewContentAlignment ' declare
GridAlignment = DataGridViewContentAlignment.MiddleCenter ' set所以应该是这样:
Dim GridColType1 as DataGridViewColumn ' declare variable (how?)
Dim GridColType2 as DataGridViewColumn ' declare variable (how?)
' To use variable like this:
GridColType1 = DataGridViewColumn.DataGridViewTextBoxColumn ' set it as TextBox column
GridColType2 = DataGridViewColumn.DataGridViewComboBoxColumn ' set it as ComboBox column在这个阶段,不存在DataGridView,它是一个用于动态生成的存储定义,我需要正确的声明才能在PropertyGrid中使用它。
编辑:作为另一个想法,这里是VS在添加/编辑DataGridView列时在GUI中拥有的内容:

所以它是ColumnType声明,它的集合显示在列表框中,我正在寻找。
发布于 2019-02-01 21:07:33
好的,似乎最好也是最简单的方法是定义自定义Enum。
Public Enum DataGridViewColumnType
NotSetError = 0
TextBoxColumn = 1
ImageColumn = 2
CheckBoxColumn = 3
ComboBoxColumn = 4
ButtonCOlumn = 5
End Enum然后,我可以设置一个该类型的变量:
Public GridColType As DataGridViewColumnType然后,它可以用于财产:
<CategoryAttribute("Grid"), DefaultValueAttribute(""), DescriptionAttribute("Select column type"), DisplayName("Grid Column Type")>
Public Property PropGriColType() As DataGridViewColumnType
Get
Return GridColType
End Get
Set(ByVal Value As DataGridViewColumnType)
GridColType = Value
End Set
End Property结果如所愿:

https://stackoverflow.com/questions/54464869
复制相似问题