Deeddolith
Messages postés20Date d'inscriptionjeudi 24 novembre 2005StatutMembreDernière intervention 4 octobre 2008
-
18 sept. 2008 à 18:33
Deeddolith
Messages postés20Date d'inscriptionjeudi 24 novembre 2005StatutMembreDernière intervention 4 octobre 2008
-
18 sept. 2008 à 23:57
Bonjour
J'utilise un datagridview (dtgrd_drop) que je rempli a la main.
J'ai entre autre une colonne formatée en pourcentage (appelée dropRatePercent), et une autre invisible (appelée dropRate) avec les meme valeurs sans format.
Je voudrais, lorsque l'on clique sur la colonne dropRatePercent, trier selon les valeurs de la colonne dropRate.
J'ai ecrit le code suivant:
01 Private
Sub dtgrd_drop_SortCompare(
ByVal sender
As
Object,
ByVal e
As System.Windows.Forms.DataGridViewSortCompareEventArgs)
Handles dtgrd_drop.SortCompare
02
03 If (e.Column.Name =
"dropRatePercent")
Then
04 e.Handled =
True
05 If (dtgrd_drop.SortOrder = SortOrder.Ascending)
Then
06 dtgrd_drop.Sort(dtgrd_drop.Columns(
"dropRate"), System.ComponentModel.ListSortDirection.Descending)
Deeddolith
Messages postés20Date d'inscriptionjeudi 24 novembre 2005StatutMembreDernière intervention 4 octobre 2008 18 sept. 2008 à 23:57
Merci, tu m'a apporté une partie de la réponse, en effet, je n'utilisait pas le bon évennement.
Je pense que tu voulais parler de ColumnHeaderMouseClick, parce que ColumnClick, j'ai pas trouvé.
Je me suis appercu que dtgrd_drop.SortOrder retombais toujours a la valeur Sortorder.Ascending lors de l'appel de mon évennement, je pense que cela est du au fait que je trie une colonne invisible.
Qu'a cela ne tienne, passons par une variable global, initialisée a Sortorder.None.
Voici donc mon code revu et corrigé:
Dim dropSortDirection AsSortOrder = SortOrder.None