Ich versuche Drag-and-Drop-Funktionalität mit MVVM
schreiben, die mir PersonModel
Objekte von einem ListView
zu einem anderen ziehen können.WPF Drag & Drop - Holen Sie sich Original-Source-Informationen von DragEventArgs
Dies funktioniert fast, aber ich muss in der Lage sein, die ItemsSource der Quelle ListView von den DragEventArgs zu bekommen, die ich nicht herausfinden kann, wie es geht.
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);
}
}
Jede Hilfe würde sehr geschätzt werden.
Danke!
In meinem Drag & Drop-Implementierung I Klasse erstellt habe DragManager (das ist Singleton) und hinzugefügt ein privates Feld DraggingElement. Weil nur ein Element zur Zeit gezogen werden kann. – vorrtex