locked
FAQs:怎么为Combobox/ListBox 显示一个数据库中的一个表数据? RRS feed

  • 问题

  • 为了帮助大家更好地学习 Visual Basic技术,微软论坛技术支持团队编辑了一些列的 "Visual Basic 常见问题及解答" 精华帖。

    本帖的主题是:怎么为Combobox/ListBox 显示一个数据库中的一个表数据?

    如果您觉得这个帖子对您的学习、工作有所帮助,请再把这个帖子分享给你的同学、同事和朋友。

    如果您想阅读更多的 "Visual Basic 常见问题及解答",请打开索引页面:
    http://social.msdn.microsoft.com/Forums/zh-CN/vbasiczhchs/thread/c9ab4b8e-99dc-49a2-bcea-30f3ecc3c3b7


    如果您对我们的论坛在线支持服务有任何的意见或建议,请通过邮件告诉我们。
    MSDN 论坛好帮手 立刻免费下载  MSDN 论坛好帮手
    2011年3月3日 2:37

答案

  • 2种方式:

    1) 通过DataTable

     Imports System.Data.OleDb

    Public Class Form1

        Private Sub Form1_Load(ByVal sender As System.Object, _

                               ByVal e As System.EventArgs) Handles MyBase.Load

            Dim con As OleDbConnection = New OleDbConnection( _

            "Provider=Microsoft.jet.oledb.4.0;data source=C:\USERS.mdb")

            Dim cmd As OleDbCommand = New  _

            OleDbCommand("SELECT Username FROM Table1", con)

            con.Open()

            Dim myDA As OleDbDataAdapter = New OleDbDataAdapter(cmd)

            Dim myDataSet As DataSet = New DataSet()

            myDA.Fill(myDataSet, "MyTable")

            '第一种

            ComboBox1.DataSource = myDataSet.Tables("MyTable").DefaultView

            ComboBox1.ValueMember = "Username"

            ComboBox1.DisplayMember = "Username"

            ' 第二种

            For Each dRow As DataRow In myDataSet.Tables("MyTable").Rows

                ComboBox1.Items.Add(dRow.Item("Username"))

            Next

            con.Close()

            con = Nothing

        End Sub

    End Class

    2) 通过DataReader

      Imports System.Data.OleDb

    Public Class Form1

        Private Sub Form1_Load(ByVal sender As System.Object, _

                               ByVal e As System.EventArgs) Handles MyBase.Load

            Dim con As OleDbConnection = New OleDbConnection( _

            "Provider=Microsoft.jet.oledb.4.0;data source=C:\USERS.mdb")

            Dim cmd As OleDbCommand = New  _

            OleDbCommand("SELECT Username FROM Table1", con)

            con.Open()

            Dim sdr As OleDbDataReader = cmd.ExecuteReader

            While sdr.Read()

                ComboBox1.Items.Add(sdr.Item("Username").ToString)

            End While

            con.Close()

            con = Nothing

        End Sub

    End Class

     

     

    以上的2种方法同样适用于ListBox 控件。
    如果您对我们的论坛在线支持服务有任何的意见或建议,请通过邮件告诉我们。
    MSDN 论坛好帮手 立刻免费下载  MSDN 论坛好帮手
    2011年3月3日 2:37