Bonjour,

j'ai un datagridview que je remplis avec un dataset
un textbox et un bouton
le datagridview est mis à readonly = true
je voudrais après avoir tapé un string dans le textbox et cliquer le bouton
selectioner la rangée dont rows(i).Cells(1).Value.ToString = la valeur du textbox
et mettre cette rangée à readonly = false pour permettre de modifier les données
des cellules
voila le code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
DataGridView1.ReadOnly = True
 
Private Sub Buttonshow_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Buttonshow.MouseClick
      For iter = 0 To DataGridView1.RowCount - 2
            If DataGridView1.Rows(iter).Cells(1).Value.ToString = searchnametxt.Text Then
                DataGridView1.Rows(iter).ReadOnly = False
                DataGridView1.Rows(iter).Selected = True
                exit for
            End If
        Next
    End Sub
le code fonctionne pas comme voulu
la rangée est selectionnée mais DataGridView1.Rows(iter).ReadOnly = False
n'a pas d'effet

par contre si j'écris ainsi

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
' DataGridView1.ReadOnly = True 
 
Private Sub Buttonshow_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Buttonshow.MouseClick
      For iter = 0 To DataGridView1.RowCount - 2
            If DataGridView1.Rows(iter).Cells(1).Value.ToString = searchnametxt.Text Then
                DataGridView1.Rows(iter).ReadOnly = False
                DataGridView1.Rows(iter).Selected = True
            Else
                DataGridView1.Rows(iter).ReadOnly = True
            End If
        Next
    End Sub
cela fonctionne
la question pourquoi la 1 er méthode ne fonctionne pas ?

merci d'avance