Vb.net 如何从DataTable/TableAdapter设置ComboBox/RepositoryItemComboBox数据源?

Vb.net 如何从DataTable/TableAdapter设置ComboBox/RepositoryItemComboBox数据源?,vb.net,winforms,combobox,grid,devexpress,Vb.net,Winforms,Combobox,Grid,Devexpress,我想知道如何将数据源设置为组合框,以防每次网格加载时都要从数据库加载数据。 这就是我现在所做的(我硬编码了3项,只是想看看它是否有效) 我通过DataTableAdapter从数据库获取数据,在那里我编写了触发sql查询的方法 在提出建议后: Dim riLookup As New RepositoryItemLookUpEdit() riLookup.DataSource = DataTableDobTableAdapter.FillDob(Me.DsOrders.DataT

我想知道如何将
数据源
设置为
组合框
,以防每次网格加载时都要从数据库加载数据。 这就是我现在所做的(我硬编码了3项,只是想看看它是否有效)

我通过DataTableAdapter从数据库获取数据,在那里我编写了触发sql查询的方法

在提出建议后:

 Dim riLookup As New RepositoryItemLookUpEdit()
        riLookup.DataSource = DataTableDobTableAdapter.FillDob(Me.DsOrders.DataTableDob)
        riLookup.ValueMember = "ID"
        riLookup.DisplayMember = "TITLE"
        riLookup.BestFitMode = DevExpress.XtraEditors.Controls.BestFitMode.BestFitResizePopup
        GridView1.Columns("CODE").ColumnEdit = riLookup
        GridView1.BestFitColumns()
但我在这里看到的是下拉列表中的值应该是下一列:

谢谢各位
Cheers

要填充ComboBoxEdit编辑器的项目,您可以将数据库中的数据加载到列表中,然后遍历列表中的所有项目,并将它们添加到项目集合中。例如:

For Each row As DataRow In dataTable
        Dim cellData As String = DirectCast(row(columnName), String)  
        riCombo.Items.Add(cellData)
Next

此外,您还可以使用其中一个可用的。这些编辑器提供DataSource属性,允许您将数据从数据库加载到列表,然后将此列表分配给DataSource属性。完成此操作后,只需设置键成员值成员属性。这样,您就不需要手动填充项目

请检查我的编辑,在你建议我编辑后,GridView1.Columns(“代码”)的数据类型是什么?由于LookUpEdit对ValueMember使用Int32,因此使用LookUpEdit的GridColumn也应绑定(GridColumn.FieldName)到Int32。
For Each row As DataRow In dataTable
        Dim cellData As String = DirectCast(row(columnName), String)  
        riCombo.Items.Add(cellData)
Next