Salve a tutti. Buonasera a tutti !!!
Sono nuovo di qs forum e mi sn iscritto con l'intenzione di imparare qualcosa in più. Diciamo che conosco poco e proprio per questo sono intenzionato a fare passettini in avanti.
Sto facendo un progettino e adesso vi espongo cosa faccio e cosa vorrei fare.

Ho un form all'interno del quale, con il componente in oggetto, riempo una griglia prendendo elementi da un database access.
La griglia viene popolata correttamente e riesco a gestirla come voglio cancellando, aggiungendo e muovendomi all'interno di essa.

Quello che non riesco fare è la seguente cosa: ho un altro form attraverso il quale effettuo la ricerca degli elementi di una colonna. Questa ricerca è univoca di conseguenza mi restituirà sempre una sola riga.
Una volta trovato il record visualizzo i contenuti in alcuni txtbox e richtextbox.
Fin qui tutto ok.

Il problema è che non riesco a far muovere la freccettina nera che punta la riga. Cioè con la ricerca io trovo la riga ma il record puntato rimane sempre il primo in alto.
Per questo motivo non riesco a modificare il record trovato perchè se vado su MODIFICA non mi modifica il record trovato ma quello puntato dalla freccia (che poi sarebbe anche la riga sempre evidenziata).

Come faccio a far si che con la ricerca del record la freccia nera si disponga proprio sul record trovato?

Sul web ho visto qualcosa con SelectedRows o altro ma con tutto rispetto non sono stato in grado di trovare niente neanche nella spiegazione del componente.

Sapreste darmi una mano? Vi ringrazio anticipatamente.

Quanto da me scritto che funziona a meno della cosa che vi ho sopra esposto:


Private Sub CmdCercaOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdCercaOK.Click

Dim sql As String

sql = "SELECT UDT, Cassa, Serial, Problema, Soluzione, [Operatore Open], [Operatore Close] FROM (rep) WHERE (Serial = '" & TxtCerca.Text & "')"

WriteDatabase(sql, Connection & My.Settings.CurrentDb & ".accdb")
table = TableReturn(sql, Connection & My.Settings.CurrentDb & ".accdb") '

For Each row As DataRow In table.Rows

FrmSecondario.CmdCreaSerial.Enabled = False
FrmSecondario.RbtSalvaItem.Enabled = False

FrmPrincipale.TxtProblema2.Text = row.Item("PROBLEMA")
FrmPrincipale.RichTextCassa2.Text = row.Item("CASSA")
FrmPrincipale.RichTextUdt2.Text = row.Item("UDT")
FrmPrincipale.RichTextOpOpen2.Text = row.Item("OPERATORE OPEN")
FrmPrincipale.TxtSoluzione2.Text = row.Item("SOLUZIONE").ToString
FrmPrincipale.RichTextOpClose2.Text = row.Item("OPERATORE CLOSE").ToString

Next


If table.Rows.Count = 0 Then
MsgBox("Il Serial Number inserito potrebbe non essere corretto !" & _
vbCrLf & "Il Serial Number inserito potrebbe non esistere !" & _
vbCrLf & "Digitare correttamente il Serial Number. Grazie !", MsgBoxStyle.Information, "Informazione !")

End If
Me.Close()
End Sub
End Class