Selection cellules dans datagridview
Résolujulia Namor Messages postés 532 Statut Membre -
Bonjour à Tous
je reviens vers vous pour solliciter votre aide
dans un datagridview je voudrais empêcher ou du moins mettre un message suivi d'un exit sub :
- si sélection simultanée de plusieurs cellules sur deux ou plusieurs lignes
-si sélection de plusieurs cellules sur toute colonne
Autoriser que la sélection de plusieurs cellules sur la même ligne .
ci dessous quelques capture pour illustrer .
merci de votre aide
une piste : j'ai tenté ce code ci dessous (en vain ) pour détecter les ColumnIndex et rowindex afin de les comparer et déterminer les plages sélectionnées .
For Each cell In DataGritable.SelectedCells
MsgBox("ColumnIndex: " & cell.ColumnIndex)
MsgBox("RowIndex: " & cell.rowIndex)
Next
End Sub
4 réponses
-
Bonjour
il existe une collection SelectedRows et une collection SelectedColumns.
Tu peux vérifier que seule l'une des 2 compte plus d'un item, dans l'événement SelectionChanged par exemple
-
le souci c'est que ces collections ( SelectedRows et SelectedColumns) ne fonctionnent qu'avec la propriété sélection mode sur FullRowSelect .
dans mon projet j'utilise la propriété sélection mode sur CellSelect..
-
Bonjour
peut-être à partir de ça
Dim r_min = dataGridView1.Rows.Count() Dim r_max = -1 For Each macell In dataGridView1.SelectedCells If macell.rowIndex < r_min Then r_min = macell.rowIndex If macell.rowIndex > r_max Then r_max = macell.rowIndex Next MessageBox.Show("Nombre de lignes : " + (r_max - r_min + 1).ToString())
-
Bonjour
Exactement ce qu'il me faut .
Un gros gros merci à toi.
Bon dimanche