2009-03-10 7 views
6

Ich habe ein WPF-Formular mit einer ListBox von Elementen, die an eine Methode gebunden sind, die die Elemente für das List-Feld erhält. Was ich will, ist ein zusätzliches Element oben in der ListBox, das sich anders verhält als die übrigen Elemente.Wie kann ich ein zusätzliches Element zu einer WPF-ListBox mit ItemSource hinzufügen?

Nehmen wir zum Beispiel an, ich habe eine Liste von Autoren (datengebunden zu einer Liste), und wenn ich einen Autor auswähle, füllt er ein anderes Listenfeld mit Büchern dieses Autors auf. Ich hätte gerne ein zusätzliches Element in der lstAuthors-Listbox mit dem Titel Show All, das die andere Listbox mit allen Büchern füllt. Wie kann ich diesen zusätzlichen Artikel zu meiner Listbox hinzufügen?

Antwort

9

Verwenden Sie CompositeCollection, um Ihre Sammlung mit einer anderen Sammlung zusammenzuführen, die Ihr spezialisiertes Element enthält. Verwenden Sie dann eine stark typisierte Datatemplate für Ihre spezielle Option "Alle auswählen", die in diesem Abschnitt die gewünschten Funktionen erfüllt.

Weitere Optionen sind das Deaktivieren in der Listenansicht Scrollen, die Listenansicht in einem Stackpanel platzieren, zusammen mit Ihrem wählen Sie alle, und dann diese Stapelplatte in einem Scroll platzieren, oder einfach nur einen Knopf in der Benutzeroberfläche setzen :)

Verwandte Themen