2009-07-22 19 views
3

Lassen Sie mich damit beginnen, dass ich komplett neu bei WPF bin (dies ist mein erstes Projekt und ich arbeite seit weniger als einer Woche darin). Nachdem das gesagt wurde, sei bitte freundlich zu mir!Sortieren einer ListBox in WPF

Ich habe drei Liste ListBox es, die an ObservableCollection s von einem LINQ Abfragen gebunden werden. Am Anfang ist alles in Ordnung, alle drei sind richtig belegt. Mein Kunde muss die Auswahl per Drag-and-Drop von einem ListBox auf einen anderen ziehen. Ich habe auch das funktioniert, aber wenn ich die Drag & Drop, die neue Auswahl wird an der Unterseite der ListBox statt alphabetisch mit den vorhandenen Elementen sortiert.

Wie kann ich die ListBox zur Laufzeit durch Code nach der Drag-and-Drop-Operation abgeschlossen ist abgeschlossen.

Danke!

Antwort

5

Es ist nicht ganz klar, wie Sie Drag & Drop in Ihrem Code handhaben. Sie sagen, dass Ihre ListBoxen alle datengebunden sind - was bedeutet, dass Sie Elemente per Drag & Drop tatsächlich von einer Sicherungskopie zu einer anderen verschieben. Wenn dies der Fall ist, zeigt ListBox nur die Elemente in der Reihenfolge an, in der sie in der Sammlung vorhanden sind. Sie sollten sie entweder dort sortieren, oder, wenn das Sortieren in Ihrem Fall ein Nur-Sicht-Verhalten ist (dh Artikel sind im Datenmodell tatsächlich ungeordnet), sollten Sie CollectionView verwenden, um Ihre Sammlungen zu verpacken und für die Sortierung einzurichten , und binden Sie die ListBoxen an diese.

+0

Ihre Annahmen sind richtig, und ich werde dies versuchen, wenn ich eine Chance habe. Vielen Dank!! – darthnosaj