Permettre de modifier une rangée d'un datagridview [Résolu]

cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention - 3 déc. 2013 à 21:31 - Dernière réponse : cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention
- 4 déc. 2013 à 02:17
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

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

' 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
Afficher la suite 

Votre réponse

1 réponse

cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention - 4 déc. 2013 à 02:17
0
Merci
au lieu de

DataGridView1.ReadOnly = True 

For iter = 0 To DataGridView1.RowCount - 2
DataGridView1.Rows(iter).ReadOnly = True
Next
Commenter la réponse de cs_ShayW

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.