Bonjour à tous,
J'aimerais beaucoup avoir votre aide sur ce bout de code :
J'aimerais que certaines cellules de mon dgv soit en Lecture seul en fonction du type de ligne que j'ajoute. Le type est récupéré en lisant la colonne Key2.
Mon dgv contient bien 2 type de lignes "EQU" et "TAB" mais ce sont toutes les lignes qui passent en lecture seule, hors j'aimerais que ce soit uniquement les lignes "TAB".
Aussi il semblerait que RowsAdded peut être levé une seule fois pour un ensemble de lignes, comment faire pour parcourir toutes les lignes nouvellement ajoutées (soit manuellement soit par programmation).
Et pour finir je me demande si je ferait pas mieux de le faire dans le Cellformating ou ailleurs mais cette mise en forme est fonction de la valeur qui représente mon type de ligne qui elle même est définie lorsque je crée la ligne. Une fois crée ce type de ligne ne change pas.
Merci beaucoup pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Private Sub DataGridViewMain_RowsAdded(ByVal sender As Object, ByVal e As DataGridViewRowsAddedEventArgs) Handles DataGridViewMain.RowsAdded MessageBox.Show(String.Format("RowsAdded : {0} at RowIndex : {1}", e.RowCount, e.RowIndex)) Dim view As DataGridView = CType(sender, DataGridView) Dim key2 As String = CStr(view.Rows(e.RowIndex).Cells(DicoColsEquipements.EnumCol.Key2).Value) Select Case key2 Case "EQU" Case "TAB" DataGridViewMain.Rows(e.RowIndex).Cells(DicoColsEquipements.EnumCol.Tableau_Repere).ReadOnly = True DataGridViewMain.Rows(e.RowIndex).Cells(DicoColsEquipements.EnumCol.Désignation).ReadOnly = True End Select End Sub
Partager