リストボックスに表示 [VB.NET]

Visual Basic.NET ADO.NETデータベースプログラミング

ListBox DataAdapter.Fill

DataSetオブジェクトと テーブル名を引数に指定し、DataAdapterオブジェクトのFillメソッドを呼び出して、リストボックス(ListBox)にテーブル列の値を表示するVB.NETのサンプルプログラムです。

MDB版:サンプルプログラム

ListBox

コントロール プロパティ 設定値
LbxSyainSimei - -

sample.mdbをプロジェクトフォルダにあるbinフォルダに置きます。

ソースリストの枠内をクリックすると全選択できます。

Imports System.Data.OleDb

Public Class FormSelectListBox
    Inherits System.Windows.Forms.Form

#Region " Windows フォーム デザイナで生成されたコード "
    ' 自動生成部分省略
#End Region

    '---------------------------------------------------------------
    ' 部門テーブルの部門名をリストボックスに表示
    '---------------------------------------------------------------
    Private Sub FormSelectListBox_Load _
        (ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles MyBase.Load

        Dim con As New OleDbConnection()
        Dim cmd As New OleDbCommand()
        Dim da As New OleDbDataAdapter()
        Dim ds As New DataSet()

        Try
            ' DB接続文字列の設定
            con.ConnectionString = _
            "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
            Application.StartupPath & "\sample.mdb"

            ' コネクションの設定
            cmd.Connection = con

            ' SQL文の設定
            cmd.CommandText = _
                "SELECT 社員コード, 社員氏名 FROM 社員テーブル"

            ' データを取得する 
            da.SelectCommand = cmd
            ds.Clear()
            da.Fill(ds, "社員テーブル")

            ' リストボックスに社員氏名を表示する
            LbxSyainSimei.DataSource = ds.Tables("社員テーブル")
            LbxSyainSimei.DisplayMember = "社員氏名"

            ' 社員氏名に対応した社員コードを取得する
            LbxSyainSimei.ValueMember = "社員コード"

        Catch ex As Exception
            ' 例外が発生した時の処理
            MessageBox.Show(ex.ToString, "例外発生")

        End Try

    End Sub

End Class