Bonjour,
Je suis en Projet ou je dois réaliser un projet pour une entreprise, j'ai quasiment tous codé excepter cela :
J'ai dans une datagridview des checkboxs
Je voudrai que lorsque l'utilisateur en coche une il puissent cocher que celle qui est un haut et celle qui est en bas de celle qui vient de cocher.
Mon idée était qu'une fois qu'il en a coché une, elles se verrouillent toutes excepter celle a côte de celle qu'il vient de cocher .

Pour les verrouiller toutes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
For i = 0 To Me.dgv_1.Rows.Count - 1    'Compte toutes les lignes de la dgv
    If Me.dgv_1.Rows(i).Cells("check").Value = False And Me.bool_compte_check = True Then   'la variable bool_compte_check est false qu'une seule fois lors du démarrage pour que l'utilisateur puissent cocher au moins la premiere case
        Me.checkbox_true = Me.checkbox_true + 1     'Cette variable prend 22 quand toutes les cellules sont false
        If Me.dgv_1.Rows(i).Cells("check").Value = False Then
            Me.dgv_1.Rows(i).Cells("check").ReadOnly = True     'On vérouille toutes les cellules
        End If
    End If
Next
Pour déverrouiller les cellules à coté j'avais pensé à :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
If Me.checkbox_true <> 21 Then 'Si il y a une cellules active on peut alors désactiver les deux à coter
    Me.index = Me.dgv_1.CurrentRow.Index
 
    index_derriere = Me.index + 1   'Pour avoir l'index de la cellule d'avant
    Me.dgv_1.Rows(index_derriere).Cells("check").ReadOnly = True
 
    index_devant = Me.index - 1     'Pour avoir l'index de la cellule de devant
    Me.dgv_1.Rows(index_devant).Cells("check").ReadOnly = True
End If
Mais cela ne fonctionne pas pouvez vous m'indiquer une autres idée ou m'aider à compléter mon code ?