[WPF] Databinding Treeview WPF
Bonjour tout le monde,
j'ai un soucis de Databinding sur un Treeview (XAML) en WPF
Je suis en MVVM.
Alors.
J'ai trouvé plein de tuto sur comment databinder un treeview
mais le soucis c'est que ce binding ce fais a l’instanciation du treeview.
Moi je veux ajouter mon item (une liste) a la racine du treeview en passant par un bon vieux menu-> Fichier->ouvrir je selectionne mon fichier et pouf il s'ajoute dans mon treeview.
ps: si je met mon fichier a pendant la creation de l'objet, le fichier s'ajoute bien comme il faut. mais ca reste immuable.
Si vous avez des idee je suis prenneur.
j'ai suivis ce lien pour commencer.
Je passe par un INotifyPropertyChange.
Merci.
Utilistation des objects pour un treeview
Salut, j'ai pas mal galéré aussi au début et j'ai trouvé deux solutions pour faire une treeview avec icones dans les noeuds :
1. Tu peux utiliser les classes des composants graphiques :
Ton TreeViewItem a une propriété "Item" de type "Object" que tu peux implémenter avec d'autres objects graphiques.
En VB.net/C# et WPF, tu peux créer un stackpanel dans lequel tu places un object image et un objet TextBlock graçe à sa propriété chidren qui est une collection d'objets. tu définis ensuite les propriétés de l'objet image et textblock puis tu les ajoute dans ton treeview.
2. Le DataBinding n'est pas mal mais lorsque tu les remplis dans ton code VB ou C#, n'oublies pas de définir la proriété ItemSource de ton treeview.
Le databinding a un inconvenant c'est que tu dois gérer l'aspect hiérarchique dans ton databinding lui-même. Autrement dit, tu dois avoir un objet que je nomme souvent "Child" que j'instancie dans le constructeur de mon binding. cet objet va permettre à la classe de s'instancier elle-même si tu as besoin de noeud enfant.
Je ne sais pas si c'est clair mais n'hésites pas à me recontacter en cas de besoin, j'ai quelques exemples de codes.
cordialement.