Meilleur auteur de réponses
Trier Items Treeview

Question
-
Bonjour,
J'ai un Treeview avec des Items et je veux trier ces items avec ordre croissant en ordre alphabétique.
en faite je récupère l'item dans la classe EntiteBaseDto et je charge le nœud ici donc je récupère bien mon treeview mais j'arrive pas à le trier.
private void ChargerNoeud(TreeNode noeud, IList<EntiteBaseDto> testsDto) { if (noeud != null && testsDto != null && testsDto.Count > 0) { foreach (EntiteBaseDto testDto in testsDto) { TreeNode noeudEnfant = new TreeNode(testDto.Libelle, testDto.Code); noeudEnfant.PopulateOnDemand = false; noeudEnfant.NavigateUrl = "#" + testDto.Ident; if (testDto.SousEntites != null && testDto.SousEntites.Count > 0) { this.ChargerNoeud(noeudEnfant, testDto.SousEntites); } noeud.ChildNodes.Add(noeudEnfant); } } }
Cordialement,
Réponses
-
Bonjour,
Vous pouvez utiliser la méthode OrderBy de Linq:
private void ChargerNoeud(TreeNode noeud, IList<EntiteBaseDto> testsDto) { if (noeud != null && testsDto != null && testsDto.Count > 0) { foreach (EntiteBaseDto testDto in testsDto.OrderBy(x => x.Libelle)) { TreeNode noeudEnfant = new TreeNode(testDto.Libelle, testDto.Code); noeudEnfant.PopulateOnDemand = false; noeudEnfant.NavigateUrl = "#" + testDto.Ident; if (testDto.SousEntites != null && testDto.SousEntites.Count > 0) { this.ChargerNoeud(noeudEnfant, testDto.SousEntites); } noeud.ChildNodes.Add(noeudEnfant); } } }
Cordialement,
aelassas.free.fr- Marqué comme réponse mimo85 mardi 11 octobre 2011 09:38
Toutes les réponses
-
Bonjour,
Vous pouvez utiliser la méthode OrderBy de Linq:
private void ChargerNoeud(TreeNode noeud, IList<EntiteBaseDto> testsDto) { if (noeud != null && testsDto != null && testsDto.Count > 0) { foreach (EntiteBaseDto testDto in testsDto.OrderBy(x => x.Libelle)) { TreeNode noeudEnfant = new TreeNode(testDto.Libelle, testDto.Code); noeudEnfant.PopulateOnDemand = false; noeudEnfant.NavigateUrl = "#" + testDto.Ident; if (testDto.SousEntites != null && testDto.SousEntites.Count > 0) { this.ChargerNoeud(noeudEnfant, testDto.SousEntites); } noeud.ChildNodes.Add(noeudEnfant); } } }
Cordialement,
aelassas.free.fr- Marqué comme réponse mimo85 mardi 11 octobre 2011 09:38
-