如何读取 dgv vb net 中的行?

How can i read the row in dgv vb net?

提问人:Ari's 提问时间:7/21/2023 最后编辑:Olivier Jacot-DescombesAri's 更新时间:7/21/2023 访问量:37

问:

Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
    TextBox2.Text = DataGridView1.Item(0, DataGridView1.CurrentRow.Index).Value
    Call connect()
    Dim str As String

    For Each rows As DataGridViewRow In DataGridView1.Rows
        str = "select *from Pr_MasterItem where item_id= '" & TextBox2.Text & "'"
        ListBox1.Items.Add("ada")
        Cmd = New SqlCommand(str, conn)
        Rd = Cmd.ExecuteReader
        Rd.Read()

        If Rd.HasRows Then
            TextBox4.Text = Rd.Item("item_id")
        Else
            ListBox1.Items.Add("Kosong")
        End If
    Next
    conn.Close()
End Sub

此代码必须在数据网格中逐行读取,在数据库中也是如此。

每个 DataGrid vb.net 循环

评论


答:

1赞 jmcilhinney 7/21/2023 #1

你不在循环内使用,那么它有什么意义呢?循环的想法是,你对列表中的每个项目都做了一些事情,但你不是。您只需一遍又一遍地使用当前行,即包含插入符号的行。rowsFor Each

For Each row As DataGridViewRow In DataGridView1.Rows
    str = $"SELECT * FROM Pr_MasterItem WHERE item_id = '{row.Cells(0).Value}'"

请注意,我已将变量从 to 更改为 ,因为它一次包含一行。我还忽略了与该问题无关的代码的其他问题,例如,您应该使用参数而不是使用字符串连接来构建该 SQL 代码。rowsrow

评论

0赞 Ari's 7/22/2023
此代码正在运行。谢谢兄弟