我有一个数据表(dsBrands),我想在datagridview中显示。 datagridview中的组合框从不同的表(dsGroups)中获取其选择。如何在组合框中显示当前存储在dsBrands表中的值?下面是我的代码,除了组合框留空。组合框集合可以从dsGroups正确填充。需要在dsBrands的组合框中显示的值位于集合中。 - >只是为了让这条线脱颖而出,而不是在实际的代码中。
Private Sub FillBrands()
Dim TransCount As Integer
Dim Group As String
If Not ds.Tables.Contains("dsBrands") Then Else ds.Tables("dsBrands").Clear()
conn.Open()
daBrands = New OleDbDataAdapter("Select * from Brands", conn)
daBrands.FillSchema(ds.Tables("dsBrands"), SchemaType.Source)
daBrands.Fill(ds, "dsBrands")
conn.Close()
dgv1.AutoGenerateColumns = False
bs1.DataSource = ds.Tables("dsBrands")
dgv1.DataSource = bs1
Dim colDisplay As New DataGridViewCheckBoxColumn
colDisplay.DataPropertyName = "Display"
colDisplay.HeaderText = "Include?"
colDisplay.Name = "Display"
colDisplay.Visible = True
Dim colGroupList As New DataGridViewComboBoxColumn
colGroupList.HeaderText = "Add to Group"
colGroupList.Name = "GroupList"
colGroupList.Visible = True
colGroupList.DataSource = ds.Tables("dsGroups")
--> colGroupList.DataPropertyName = "BGroup" 'BGroup is a field in dsBrands table.
dgv1.Columns.Add(colDisplay)
dgv1.Columns.Add(colBrand)
dgv1.Columns.Add(colGroup)
dgv1.Columns.Add(colGroupList)
End Sub
答案 0 :(得分:0)
与绑定常规ComboBox
时一样,您需要设置列的DisplayMember
和ValueMember
属性。 DisplayMember
指定显示其值的列,ValueMember
指定其值对应于网格数据的列。 ValueMember
应指定绑定到与绑定到网格的表的FK列对应的列的表的PK列。