Merci Skyounet d'avoir répondu si vite 
J'ai tenté d'implémenter l'exemple disponible dans le lien, mais j'ai eu quelques problèmes 
En fait, puisque mon TreeView est bindé à ma classe ItemsViewModel, l'exemple n'a pas fonctionné. J'ai donc changer Toutes les instances de TreeViewItem et de UIElement par des instances de ItemsViewModel.
Tout à bien marché sauf pour le drop.
Dans la fonction TreeViewDrop, J 'ai eu un problème avec la ligne
ItemsViewModel TargetItem = GetNearestContainer(e.OriginalSource as ItemsViewModel);
Car, en effet, DragEventArgs.OriginalSource ne peut pas subir un cast en ItemsViewModel.
Voilà toute la fonction :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
private void treeView_Drop(object sender, DragEventArgs e)
{
try
{
e.Effects = DragDropEffects.None;
e.Handled = true;
// Verify that this is a valid drop and then store the drop target
ItemsViewModel TargetItem = GetNearestContainer(e.OriginalSource as ItemsViewModel);
if (TargetItem != null && draggedItem != null )
{
_target = TargetItem;
e.Effects = DragDropEffects.Move;
}
}
catch (Exception)
{
}
} |
Je ne sais vraiment plus quoi faire?
Partager