Dela via


Anvisningar: Hämta standardvyn för en datainsamling

Med vyer kan samma datainsamling visas på olika sätt, beroende på sorterings-, filtrerings- eller grupperingsvillkor. Varje samling har en delad standardvy, som används som den faktiska bindningskällan när en bindning anger en samling som källa. Det här exemplet visar hur du hämtar standardvyn för en samling.

Exempel

För att skapa vyn behöver du en objektreferens till samlingen. Det här dataobjektet kan hämtas genom att referera till ditt eget kod-bakom-objekt, genom att hämta datakontexten, genom att hämta en egenskap för datakällan eller genom att hämta en egenskap för bindningen. Det här exemplet visar hur du hämtar DataContext för ett dataobjekt och använder det för att hämta standardsamlingsvyn för den här samlingen direkt.

myCollectionView = (CollectionView)
    CollectionViewSource.GetDefaultView(rootElem.DataContext);
myCollectionView = CType(CollectionViewSource.GetDefaultView(rootElem.DataContext), CollectionView)

I det här exemplet är rotelementet en StackPanel. DataContext är inställt på myDataSource, som hänvisar till en dataleverantör som är en ObservableCollection<T> av Order-objekt.

<StackPanel.DataContext>
  <Binding Source="{StaticResource myDataSource}"/>
</StackPanel.DataContext>

Du kan också instansiera och binda till din egen samlingsvy med hjälp av klassen CollectionViewSource. Den här samlingsvyn delas endast av kontroller som binder till den direkt. Ett exempel finns i avsnittet Skapa en vy i Översikt över databindning.

Exempel på funktioner som tillhandahålls av en samlingsvy finns i Sortera data i en vy, filtrera data i en vyoch Navigera genom objekten i en datainsamlingVy.

Se även