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