使用VB.NET

时间:2016-04-09 14:23:20

标签: sql vb.net

我正在使用VB.NET和SQL Server数据库。 我想在文本框中显示选定的行,以便我可以编辑它们并更新到数据库。 但是当我完成我的代码时,它出现了一个例外,告诉我没有找到列名。我仔细检查了列名并确认拼写正确。 问题是什么? 这是我的代码:

Private Sub DataGridView1_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
    If e.RowIndex >= 0 Then
        Dim row As DataGridViewRow
        row = Me.DataGridView1.Rows(e.RowIndex)

        TextBox1.Text = row.Cells("StudentID").Value.ToString
        TextBox2.Text = row.Cells("StudentName").Value.ToString
        TextBox3.Text = row.Cells("HomeAddress").Value.ToString
        TextBox4.Text = row.Cells("ContactNumber").Value.ToString
        TextBox5.Text = row.Cells("SubjectCode").Value.ToString
        TextBox6.Text = row.Cells("SubjectName").Value.ToString
        TextBox7.Text = row.Cells("ParentName").Value.ToString
        TextBox8.Text = row.Cells("ParentContact").Value.ToString
    End If
End Sub

这是我的数据库:

Database

另外,我想问一下如何使用按钮更新/刷新数据库? 我通过在线查看但没有任何效果,我想在添加/编辑/删除数据后刷新数据库。

非常感谢你。

2 个答案:

答案 0 :(得分:1)

你这是错误的方式。我猜你正在从数据库中填充DataTable。然后,您应该将DataTable绑定到BindingSource,然后您应该将其绑定到DataGridView AND TextBox控件。当您选择网格行 AND 时,TextBox控件将自动填充TextBox控件中的任何更改将自动推回DataTable和网格。

要绑定TextBox,请在设计器中选择它,然后打开“属性”窗口。然后,您可以展开(DataBindings)节点并选择其下的Text属性。从那里,您可以选择BindingSource作为数据源,并指定要绑定到哪个列。

答案 1 :(得分:0)

使用此:

Private Sub dgvEmployees_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvEmployees.CellContentClick

textbox1.Text = datagridview.Rows(e.RowIndex).Cells(0).Value

end sub