Je crée un menu dont les éléments de menu seront injectés à partir de différents modules (j'utilise la bibliothèque d'applications composites: Unity, Prism).Comment trier les données hiérarchiques dans WPF?
Exemple:
File - Open - New - A (injected from ModuleA) - B (injected from ModuleB) - C (injected from ModuleC) - Exit
Parce que je ne sais pas quels éléments seront injectés, je besoin de trier mes articles en quelque sorte de menu. J'essaye de faire ceci maintenant en créant un classéMenuItem qui hérite de MenuItem. ClasséMenuItem a une propriété supplémentaire, Rank, qui est un entier.
Je définis l'élément de menu "File -> Exit" comme étant 1000 et "File -> Open" comme rang 0, de sorte que Exit apparaîtra toujours au bas du menu File, et Open will toujours apparaître en haut. Le problème que j'ai est que Je ne peux pas comprendre la meilleure façon de trier la hiérarchie de menu. Je peux trier le plus haut niveau facilement en utilisant un CollectionView, mais je n'arrive pas à comprendre comment l'appliquer aux sous-éléments.
Un conseil serait grandement apprécié.
Nous avons implémenté notre solution de manière similaire. Désolé pour l'acceptation tardive. –