2013年7月7日日曜日

vb.net 超メモ GridViewのデータ取得

Public Class Form1

    Public ds As DataSet = New DataSet
    Public dt As DataTable
    Public dr As DataRow
    Public datarow As DataRow()

    Private Property idx As Integer

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        ds = Nothing
        ds = New DataSet

        dt = ds.Tables.Add("main")

        dt.Columns.Add("col1", Type.GetType("System.String"))
        dt.Columns.Add("col2", Type.GetType("System.String"))

        dr = dt.NewRow()
        dr("col1") = "りeんnご2"
        dr("col2") = "いち?ご2"

        dt.Rows.Add(dr)

        dr = dt.NewRow()
        dr("col1") = "メ?ロ?ン?"
        dr("col2") = "スXイCカJ"

        dt.Rows.Add(dr)

        For Each row In ds.Tables("main").Rows
            Dim str As String
            str = row("col1")
        Next
        DataGridView1.AllowUserToAddRows = False
        'DataGridView1.AutoGenerateColumns = False

        DataGridView1.DataSource = ds.Tables("main")

        'DataGridView1.Columns.Add("col", "1カJラ?ム€")
        'DataGridView1.Rows.Add()
        'idx = DataGridView1.Rows.Count - 1
        'DataGridView1.Rows(idx).Cells(0).Value = "1行s1カJラ?ム€"

        DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect


    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        If DataGridView1.SelectedRows.Count = 1 Then
            MsgBox("1行sだ?け選I択dさ3れeてAいまUす。B")
        End If

        Dim dgd As DataGridViewSelectedRowCollection
        dgd = DataGridView1.SelectedRows

        For Each dgr As DataGridViewRow In DataGridView1.SelectedRows

            MsgBox(dgr.Index)
            Dim drv As System.Data.DataRowView = CType(dgr.DataBoundItem, System.Data.DataRowView)
            Dim dr As System.Data.DataRow = CType(drv.Row, System.Data.DataRow)

            MsgBox(dr.Item(0))

        Next


    End Sub
End Class