drag drop d'un treeview vers un stackpanel
Bonjour,
Je trouve plein d'exemple de drag & drop de treeview vers d'autres treeviews ou de listbox vers d'autres listbox mais ce que je voudrais faire est un peu différent.
Je voudrais choisir un objet "A" dans un treeview et en insérer un autre "B" dans un stackpanel. Idéalement, l'objet "B" serait construit au moment du drop des "A" dans le stackpanel et sur base des informations que contient "A".
Coté treeview, je mets:
Code:
1 2
| <toolkit:TreeViewDragDropTarget AllowDrop="False" HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch"> |
Le "AllowDrop" est à false car je ne veux pas droper mon objet dans mon treeview.
L'effet visuel est super, et si je "drague" un noeud, une ombre du noeud suit la souris tout au long du déplacement (avec un sigle "interdit" qui indique que l'objet n'est pas "droppable" à cet endroit.
J'ai une première question: aucun des événements DragLeave ou DragOver de mon treeview ne se déclenche quand je drag mon noeud, pourquoi ?
Du coté de mon stackpanel, j'ai mis le allowDrop à "true":
Code:
1 2
| <StackPanel Grid.Column="1" Grid.Row="1" AllowDrop="True" DragEnter="stackPanel1_DragEnter"
DragOver="stackPanel1_DragOver" Drop="stackPanel1_Drop" Name="stackPanel1" Background="LightGoldenrodYellow" /> |
et j'ai créé des événements.
Quand ma souris glisse au dessus du stackpanel, le dessin de l'objet qui suit la souris n'a plus son sigle "interdit" mais bien un rectangle qui indique qu'on peut faire un drop. Malheureusement, et c'est ma deuxième question, ne déclenche aucun des événements et notamment celui qui m'intéresse qui est "Drop".
Quelqu'un peut-il m'aider ?