Bonjour,
J'ai une liste d'objets (ListStatusChamp : List<StatusChamp>) que je veux trier selon 2 propriétés :
D'abord NomPage de type String puis Position de type Integer.
La méthode suivante fonctionne mais ne me plait pas car je dois remettre le bout de code du délégué à chaque fois que je veux trier ma liste.
Je voudrais donc utiliser un délégué nommé mais je n'y arrive pas car page n'est pas reconnu dans la fonction puisqu'il est initialisé juste avant.
Mopn besoin :
Appeler un délégué nommé à qui je passerait le paramètre page en plus des 2 paramètres
Mais là ca dépasse mes compétences
Une aide serait bienvenue. Merci d'avance.
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
17
18
19
20
21
22
23
24 string page = (cmbbxbrSelectionInitiale.TextBoxValue == "Simulations") ? "SIM":"ART"; _listeChamps.Sort(delegate(StatusChamp champ1, StatusChamp champ2) { if (champ1.NomPage == page && champ2.NomPage == page) { return champ1.Position - champ2.Position; } else if (champ1.NomPage == page) { return -1; } else if (champ2.NomPage == page) { return 1; } else { return champ1.Position - champ2.Position; ; } }); }
Partager