データベース(MDBファイル)関連:DataGridViewのカーソル位置のデータを取得するVB2008でMDBファイルを表示させた表形式フォームのカーソル位置のデータを取得する実行例サンプルです。データベース(MDBファイル)関連へ「カーソル位置のデータを取得」ボタンをクリックすると、DataGridViewのレコード数を調査します。 レコードがないとメッセージを表示し終了します。 カーソル位置のデータを取得するには、CurrentRow.Cells(フィールド名).Value とします。 CurrentRowプロパティは、現在のセルを格納している行を取得します。 Cellsは、指定した位置にある項目を取得または設定します。 ■ 実行画面 カーソル位置のデータを取得し、全列のデータをテキストボックスに表示しています。 ■ 実行コード Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim CnString As String Dim UserID As String = "Admin" Dim Password As String = "" Dim SQL As String Dim sfina As String = "C:\sample1.mdb" Dim DaAdap As OleDb.OleDbDataAdapter Dim Tbl As New DataTable() Dim Bds As New BindingSource CnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sfina & ";" CnString = CnString & "User ID=" & UserID & ";" CnString = CnString & "Jet OLEDB:Database Password=" & Password '全フィールドの表示 SQL = "SELECT * FROM table1" 'データアダプターの作成 DaAdap = New System.Data.OleDb.OleDbDataAdapter(SQL, CnString) 'データを読む DaAdap.Fill(Tbl) 'データグリッドに表示 Bds.DataSource = Tbl DataGridView1.DataSource = Bds End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim s1 As String TextBox1.Text = "" If DataGridView1.Rows.Count = 0 Then MsgBox("データがありません。") Exit Sub End If 'カーソル位置のデータを取得 s1 = "ID: " & DataGridView1.CurrentRow.Cells("ID").Value & vbNewLine s1 = s1 & "Field1: " & DataGridView1.CurrentRow.Cells("Field1").Value & vbNewLine s1 = s1 & "Field2: " & DataGridView1.CurrentRow.Cells("Field2").Value & vbNewLine s1 = s1 & "Field3: " & DataGridView1.CurrentRow.Cells("Field3").Value & vbNewLine 'テキストボックスに表示 TextBox1.Text = s1 End Sub End Class Visual Basic 2008 Express Edition実践入門 |