传递(form1)Datagridview" ID"单击按钮

时间:2016-12-25 13:57:55

标签: mysql vb.net datagridview

我有一个问题,关于我如何通过用户传递datagridview或选定ID的值,然后点击按钮,Datagridview中的Selected ID应传递到textbox中的另一个表单并显示。这就是我想要发生的事情。因为我想使用表单1中的ID为我的子数据库的表单2。 实际上我在datagridview中的内容是从mysql作为我的数据库,并在运行时自动加载数据。如果有人能帮助我那么

Public Class frmCurriculumCourses
    Dim con As New MySqlConnection
    Dim cmd As New MySqlCommand
    Dim dt As New DataTable
    Dim da As New MySqlDataAdapter
    Dim ds As New DataSet

    Dim ConnectionString As String = "server=127.0.0.1;user id=root;database=dbgradeinquiry;password=12345;"

    Sub LoadData()

        con.ConnectionString = ConnectionString
        con.Open()

        DataGridView1.AutoGenerateColumns = False
        With cmd
            .Connection = con
            .CommandText = "SELECT * from tblcurriculumcourses"
        End With
        dt = New DataTable
        da.SelectCommand = cmd
        da.Fill(dt)
        DataGridView1.DataSource = dt
        con.Dispose()
        con.Close()
        da.Dispose()
    End Sub

 Private Sub frmCurriculum_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        LoadData()
    End Sub

 Private Sub btnViewCourses_Click(sender As Object, e As EventArgs) Handles btnViewCourses.Click
        'This is the button that im going to use for passing the selected ID from datagridview(form1) to textbox(form2)
    End Sub
End Class

2 个答案:

答案 0 :(得分:0)

如果要在Datagridview中传递Selected Row的第1列值,请使用以下代码,

Private Sub btnViewCourses_Click(sender As Object, e As EventArgs) Handles btnViewCourses.Click
  Form2.show()
  Form2.TextBox1.Text=DataGridView1.SelectedRows(0).Cells(0).Value.ToString 
End Sub

或使用以下命令,

DataGridView1.Item(0, DataGridView1.CurrentRow.Index).Value.ToString

答案 1 :(得分:0)

创建模块和全局变量:

Public Module GlobalVariables
Public cellID As String
End Module

将此代码添加到btnViewCourses按钮(form1):

Form2.TextBox1.Text = cellID

将这段代码添加到Form1类:

Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
cellID = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value
End Sub

或点击datagridview>事件> CellClick和add(与上面相同):

cellID = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value

此代码将传递SELECTED SINGLE 值。 使用方法:显示form2(别忘了),点击elft点击datagridview中的一个单元格,按下按钮。

确保在form2中有一个名为textbox2的文本框。如果您想更改名称,请在 Form2中更改名称。 TextBox1 .Text = cellID

如果要传递整个列(到多行文本框或新的datagridview),则将值逐个存储到公共变量中,或者将公共变量作为数组。我会一个接一个地去。

如果您使用ID的整数(您应该),则将公共变量从String更改为Integer。