Verifica bien que tengas tus eventos definidos, también verifica la la variable datatable, si es la misma y la mandas llamar dentro del mismo evento..se va a volver a cargar abajo de la primer consulta.
es decir:
Código vb:
Ver originalDim cmd As New SqlClient.SqlCommand("StoredProc1", cnn) With {.CommandType = CommandType.StoredProcedure}
Dim da As New SqlDataAdapter(cmd)
da.Fill(dt)
Grid1.DataSource = dt.DefaultView
Dim cmd1 As New SqlClient.SqlCommand("StoredProc2", cnn) With {.CommandType = CommandType.StoredProcedure}
Dim da1 As New SqlDataAdapter(cmd1)
Dim dt1 As New DataTable
da1.Fill(dt1)
Grid2.DataSource = dt1.DefaultView
Deben de ser diferentes las tablas a llenar, en este caso si estas haciendo el UPDATE, obviamente no aplica mi código, es para que te des una idea, o así entendi yo..