Ecco mi di nuovo.

Ho fatto un passo avanti, anzi due.
Ho fatto in modo di inserire i dati nel db e aggiornare in contempranea la visualizzazione del DataGridView.

Solo che quando inserisco i dati nel DataGridView prima della riga con i dati del modulo mi inserisce sempre una riga vuota. In pratica mi inserisce due righe di cui la prima vuota e la seonda con i dati.

Ho notato che quando io apro il modulo il DataGridview mostra una riga vuota.
Lui in partica mi aggiunge i dati alla quella riga vuota perciò a video avrò prima la riga vuota e poi i dati del modulo.
Da cosa può dipendere? Vi posto il codice:
codice:
Dim objconn As OleDbConnection
        Dim stringaconn As String
        Dim stringasql As String
        Dim objcomm As OleDbCommand
        stringaconn = "Provider=Microsoft.JET.OLEDB.4.0;Data Source="
        stringaconn = stringaconn & "|DataDirectory|\magazzino.mdb"
        objconn = New OleDbConnection(stringaconn)
        objconn.Open()
        stringasql = "Insert into dettaglio(fattura, serialNumber, identicativoInfo, tipoArticolo, marca, codArticolo, confPerScatola, prezzo, descrizioneArticolo, fornitore, dataArrivo, annotazioni) values('" & Me.fattura.Text & "', '" & Me.serialNumber.Text & "', '" & Me.identicativoInfo.Text & "', '" & Me.tipoArticolo.Text & "', '" & Me.Marca.Text & "', '" & Me.codArticolo.Text & "', " & Me.confPerScatola.Text & ", " & Me.prezzo.Text & ", '" & Me.descrizioneArticolo.Text & "', '" & Me.Fornitore.Text & "', #" & Me.dataArrivo.Text & "#, '" & Me.annotazioni.Text & "')"
        objcomm = New OleDbCommand(stringasql, objconn)
        Dim risputente As Integer
        Try
            risputente = objcomm.ExecuteNonQuery()
            'Inizio Aggiornamento DataGridView
            Me.DettaglioTableAdapter.Update(Me.MagazzinoDataSet.dettaglio)
            DettaglioBindingSource.AddNew()
            Dim newRow = DirectCast(DettaglioBindingSource.AddNew(), DataRowView)
            newRow("fattura") = fattura.Text
            newRow("serialNumber") = serialNumber.Text
            newRow("identicativoInfo") = identicativoInfo.Text
            newRow("tipoArticolo") = tipoArticolo.Text
            newRow("marca") = Marca.Text
            newRow("codArticolo") = codArticolo.Text
            newRow("confPerScatola") = confPerScatola.Text
            newRow("prezzo") = prezzo.Text
            newRow("descrizioneArticolo") = descrizioneArticolo.Text
            newRow("fornitore") = Fornitore.Text
            newRow("dataArrivo") = dataArrivo.Text
            newRow("annotazioni") = annotazioni.Text
            DettaglioBindingSource.EndEdit()
            ' Fine aggiornamento DataGridView
            If risputente = 1 Then
                MsgBox("Inserimento effettuato con successo")
                objconn.Close()
                Me.fattura.Text = ""
                Me.serialNumber.Text = ""
                Me.identicativoInfo.Text = ""
                Me.tipoArticolo.Text = ""
                Me.Marca.Text = ""
                Me.codArticolo.Text = ""
                Me.confPerScatola.Text = ""
                Me.prezzo.Text = ""
                Me.descrizioneArticolo.Text = ""
                Me.Fornitore.Text = ""
                Me.dataArrivo.Text = ""
                Me.annotazioni.Text = ""
                Me.annotazioni.Focus()
            End If
        Catch es As Exception
            MsgBox("Errore: il campo cognome e/o nome sono vuoti")
            objconn.Close()
        End Try