Ciao,
Sull' evento RowEnter del Grid chiami questo metodo
Me.DataGridView1.SelectedRows.Item(0).Index
che ti dice l' indice della 1° riga selezionata.
quindi:
TextBox.Text=Me.DataGridView1.Rows(indice ottenuto).Cells(indice).Value
Prima però vedi se esistono righe selezionate con quest' altro metodo
Me.DataGridView1.SelectedRows.Count