Gewusst wie: Abrufen der Standardansicht einer Datenauflistung
Ansichten ermöglichen es, die gleiche Datensammlung je nach Sortierung, Filterung oder Gruppierungskriterien auf unterschiedliche Weise anzuzeigen. Jede Auflistung verfügt über eine freigegebene Standardansicht, die als tatsächliche Bindungsquelle verwendet wird, wenn eine Bindung eine Auflistung als Quelle angibt. In diesem Beispiel wird gezeigt, wie Sie die Standardansicht einer Auflistung abrufen.
Beispiel
Zum Erstellen der Ansicht benötigen Sie einen Objektverweis auf die Auflistung. Dieses Datenobjekt kann durch Verweisen auf ihr eigenes CodeBehind-Objekt abgerufen werden, indem der Datenkontext abgerufen wird, indem eine Eigenschaft der Datenquelle abgerufen wird oder eine Eigenschaft der Bindung abgerufen wird. In diesem Beispiel wird gezeigt, wie Sie das DataContext-Datenobjekt abrufen und verwenden, um die Standardauflistungsansicht für diese Auflistung direkt abzurufen.
myCollectionView = (CollectionView)
CollectionViewSource.GetDefaultView(rootElem.DataContext);
myCollectionView = CType(CollectionViewSource.GetDefaultView(rootElem.DataContext), CollectionView)
In diesem Beispiel ist das Stammelement ein StackPanel. Der DataContext ist auf myDataSource festgelegt, der sich auf einen Datenanbieter bezieht, der ObservableCollection<T> eines Reihenfolge-Objekts ist.
<StackPanel.DataContext>
<Binding Source="{StaticResource myDataSource}"/>
</StackPanel.DataContext>
Alternativ können Sie mithilfe der CollectionViewSource-Klasse instanziieren und an ihre eigene Sammlungsansicht binden. Diese Auflistungsansicht wird nur von Steuerelementen freigegeben, die direkt an sie gebunden sind. Ein Beispiel finden Sie im Abschnitt "Erstellen einer Ansicht" in der Datenbindungsübersicht.
Beispiele für die Von einer Auflistungsansicht bereitgestellte Funktionalität finden Sie unter Sortieren von Daten in einer Ansicht, Filtern von Daten in einer Ansicht und Navigieren durch die Objekte in einer Datensammlungsansicht.
Weitere Informationen
.NET Desktop feedback