ListBox DataAdapter.Fill
リストボックス(ListBox)に表示した部門名を選択すると、部門名の部門コードを取得できるWeb版のサンプルプログラムです。
MDB版:サンプルプログラム
コントロール | プロパティ | 設定値 |
---|---|---|
ListBox1 | AutoPostBack | True |
LblBumonCode | BorderStyle | Ridge |
LblMessage | BorderStyle | Ridge |
MessageBox.Showを使えないので、ラベルにエラーメッセージを表示します。
sample.mdbをプロジェクトフォルダのbinフォルダに置きます。
ソースリストの枠内をクリックすると全選択できます。
Imports System.Data.OleDb Public Class WebListBox Inherits System.Web.UI.Page Protected WithEvents _ ListBox1 As System.Web.UI.WebControls.ListBox Protected WithEvents _ Label1 As System.Web.UI.WebControls.Label Protected WithEvents _ LblBumonCode As System.Web.UI.WebControls.Label Protected WithEvents _ LblMessage As System.Web.UI.WebControls.Label #Region " Web フォーム デザイナで生成されたコード " '自動生成部分省略 #End Region '---------------------------------------------------------- ' ページロード処理:部門名をリストボックスに表示 '---------------------------------------------------------- Private Sub Page_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load ' << ポストバックされていないときの処理 >> If Not IsPostBack Then Dim con As New OleDbConnection() Dim cmd As New OleDbCommand() Dim da As New OleDbDataAdapter() Dim ds As New DataSet() Try ' 仮想アプリケーションルートパスを取得 Dim vPath As String = Request.ApplicationPath ' 仮想アプリケーションルートパスの物理パスを取得 Dim path As String = Server.MapPath(vPath) ' DB接続文字列の設定 con.ConnectionString = _ "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & path & "\sample.mdb" 'コネクションの設定 cmd.Connection = con ' DB接続を開く con.Open() ' SQL文の設定 cmd.CommandText = "SELECT 部門コード, 部門名 " cmd.CommandText &= "FROM 部門テーブル " cmd.CommandText &= "ORDER BY 部門コード" ' データを取得する da.SelectCommand = cmd da.Fill(ds, "部門テーブル") ' リストボックスに部門名を表示する設定 Me.ListBox1.DataTextField = "部門名" ' 部門名に対応した部門コードを取得する設定 Me.ListBox1.DataValueField = "部門コード" ' リストボックスにDataSetを連結 Me.ListBox1.DataSource = ds Me.ListBox1.DataBind() Catch ex As Exception ' 例外が発生した時の処理 Me.LblMessage.Text = ex.ToString Finally ' DB接続を閉じる If Not con Is Nothing Then con.Close() End If End Try End If End Sub '---------------------------------------------------------- ' 選択した部門名の部門コードを取得 '---------------------------------------------------------- Private Sub ListBox1_SelectedIndexChanged _ (ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles ListBox1.SelectedIndexChanged Me.LblBumonCode.Text = Me.ListBox1.SelectedItem.Value End Sub End Class
- Windows版:ListBoxで選択した項目のコードを取得
- VB 2010 / VB 2008 SQL Server版:ListBox からコードを取得するサンプル
- VB 2010 / VB 2008 MDB版:ListBoxからコードを取得するサンプル