WPF faites Glisser et Déposez - Get source d'origine des informations à partir de DragEventArgs
Je suis en train d'écrire fonctionnalité de Glisser-Déposer à l'aide de MVVM
qui va me permettre de glisser PersonModel
objets à partir d'une ListView
à l'autre.
C'est presque un travail, mais j'ai besoin d'être en mesure d'obtenir l'ItemsSource de la source de contrôle ListView, de la DragEventArgs qui je ne peux pas comprendre comment le faire.
private void OnHandleDrop(DragEventArgs e)
{
if (e.Data != null && e.Data.GetDataPresent("myFormat"))
{
var person = e.Data.GetData("myFormat") as PersonModel;
//Gets the ItemsSource of the source ListView
..
//Gets the ItemsSource of the target ListView and Adds the person to it
((ObservableCollection<PersonModel>)(((ListView)e.Source).ItemsSource)).Add(person);
}
}
Toute aide serait grandement appréciée.
Merci!
Dans mon glisser-déposer de la mise en œuvre, j'ai créé la classe DragManager (singleton) et ajout d'un champ privé draggingElement. Parce qu'un élément peut être déplacé à la fois.
OriginalL'auteur Jason Quinn | 2010-12-23
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé la réponse dans une autre question
La façon de le faire est de passer de la source ListView dans le DragDrow.Méthode DoDragDrop ie.
Dans la méthode, qui gère la PreviewMouseMove pour la liste de do-
et puis dans le OnHandleDrop méthode de modifier le code pour
OriginalL'auteur Jason Quinn