当我运行此代码时,listbox
为空。从SQL获取数据到listbox
的最佳方法是什么?提交表单时,我想使用CustomreID
值数据存储到另一个表中,并认为使用索引将是最佳解决方案。
sSQL = "SELECT CustomerID, Company from Customers Order by Company ASC"
cmd = New SqlCommand(sSQL, moConn)
rs = cmd.ExecuteReader()
While rs.Read
lsbDestination.Items.Insert(CInt(rs("CustomerID")), rs("Company"))
End While
答案 0 :(得分:2)
您可以使用ListBox的DataSource
属性轻松地将数据绑定到ListBox。尝试这样的事情(未经测试):
Dim adapter As New SqlDataAdapter(cmd)
Dim ds As New DataSet
adapter.Fill(ds)
lsbDestination.DataTextField = "Company"
lsbDestination.DataValueField = "CustomerId"
lsbDestination.DataSource = ds.Tables(0)
lsbDestination.DataBind()
祝你好运。
答案 1 :(得分:0)
如果您想使用 ListBox
将项目添加到While rs.Read
。
Using rsAs SqlDataReader = cmd.ExecuteReader()
While rs.Read()
Dim items As Object() = {r("CustomerID"), r("Company").ToString()}
listBox1.Items.Add(items)
End While
listBox1.DisplayMember = "Company"
listBox1.ValueMember = "CustomerID"
End Using
如果您遇到问题,请告诉我。