1

I load a datagridview from a MySQL table when my form opens. If the data changes I want to update the table when the form closes. The update 'da.Update(ds.Tables(0))' returns an error, System.NullReferenceException: 'Object reference not set to an instance of an object.'

Been searching the internet for days... please help!

Public Class frmEditTask2

    Dim dgvDirty As Boolean = False
    Dim da As Odbc.OdbcDataAdapter
    Dim ds As DataSet
    
    Private Sub frmEditTask2_Load(sender As Object, e As EventArgs) Handles Me.Load
        ConnectToGuppy() 'MySQL connection to A2 host
        Dim da As New Odbc.OdbcDataAdapter("SELECT * FROM tasks2", GPconn)
        Dim ds As New DataSet()
        da.Fill(ds, "tasks2")
        dgvTasks2.DataSource = ds.Tables(0)
    End Sub
    
    Private Sub frmEditTask2_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
        If dgvDirty = True Then
            Validate()
            da.Update(ds.Tables(0))
            ds.AcceptChanges()
        End If
    End Sub
    
    Private Sub dgvTasks2_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles dgvTasks2.CellValueChanged
        dgvDirty = True
    End Sub
    Private Sub dgvTasks2_RowsAdded(sender As Object, e As DataGridViewRowsAddedEventArgs) Handles dgvTasks2.RowsAdded
        dgvDirty = True
    End Sub
    Private Sub dgvTasks2_RowsRemoved(sender As Object, e As DataGridViewRowsRemovedEventArgs) Handles dgvTasks2.RowsRemoved
        dgvDirty = True
    End Sub

End Class
RBarryYoung
  • 55,398
  • 14
  • 96
  • 137
Bill K
  • 11
  • 1

0 Answers0