Sdílet prostřednictvím


ItemCollection Třída

Definice

Obsahuje seznam položek, které tvoří obsah objektu ItemsControl.

public ref class ItemCollection sealed : System::Windows::Data::CollectionView, System::Collections::IList, System::ComponentModel::IEditableCollectionView, System::ComponentModel::IItemProperties, System::Windows::IWeakEventListener
public ref class ItemCollection sealed : System::Windows::Data::CollectionView, System::Collections::IList, System::ComponentModel::IEditableCollectionViewAddNewItem, System::ComponentModel::IItemProperties, System::Windows::IWeakEventListener
public ref class ItemCollection sealed : System::Windows::Data::CollectionView, System::Collections::IList, System::ComponentModel::ICollectionViewLiveShaping, System::ComponentModel::IEditableCollectionViewAddNewItem, System::ComponentModel::IItemProperties, System::Windows::IWeakEventListener
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
public sealed class ItemCollection : System.Windows.Data.CollectionView, System.Collections.IList, System.ComponentModel.IEditableCollectionView, System.ComponentModel.IItemProperties, System.Windows.IWeakEventListener
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
public sealed class ItemCollection : System.Windows.Data.CollectionView, System.Collections.IList, System.ComponentModel.IEditableCollectionViewAddNewItem, System.ComponentModel.IItemProperties, System.Windows.IWeakEventListener
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
public sealed class ItemCollection : System.Windows.Data.CollectionView, System.Collections.IList, System.ComponentModel.ICollectionViewLiveShaping, System.ComponentModel.IEditableCollectionViewAddNewItem, System.ComponentModel.IItemProperties, System.Windows.IWeakEventListener
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
type ItemCollection = class
    inherit CollectionView
    interface IList
    interface ICollection
    interface IEnumerable
    interface IEditableCollectionView
    interface IItemProperties
    interface IWeakEventListener
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
type ItemCollection = class
    inherit CollectionView
    interface IList
    interface ICollection
    interface IEnumerable
    interface IEditableCollectionViewAddNewItem
    interface IEditableCollectionView
    interface IItemProperties
    interface IWeakEventListener
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
type ItemCollection = class
    inherit CollectionView
    interface IList
    interface ICollection
    interface IEnumerable
    interface IEditableCollectionViewAddNewItem
    interface IEditableCollectionView
    interface ICollectionViewLiveShaping
    interface IItemProperties
    interface IWeakEventListener
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
type ItemCollection = class
    inherit CollectionView
    interface ICollection
    interface IEnumerable
    interface IList
    interface ICollectionViewLiveShaping
    interface IEditableCollectionView
    interface IEditableCollectionViewAddNewItem
    interface IItemProperties
    interface IWeakEventListener
Public NotInheritable Class ItemCollection
Inherits CollectionView
Implements IEditableCollectionView, IItemProperties, IList, IWeakEventListener
Public NotInheritable Class ItemCollection
Inherits CollectionView
Implements IEditableCollectionViewAddNewItem, IItemProperties, IList, IWeakEventListener
Public NotInheritable Class ItemCollection
Inherits CollectionView
Implements ICollectionViewLiveShaping, IEditableCollectionViewAddNewItem, IItemProperties, IList, IWeakEventListener
Dědičnost
Atributy
Implementuje

Příklady

Pokud máte ItemsControlnapříklad obsah, ListBox můžete tuto vlastnost použít Items pro přístup ItemCollectionk zobrazení, což je zobrazení. Vzhledem k tomu, že se jedná o zobrazení, můžete použít funkce související se zobrazením, jako je řazení, filtrování a seskupování. Všimněte si, že když je položka ItemsSource nastavena, operace zobrazení deleguje na zobrazení v kolekci ItemsSource. ItemCollection proto podporuje řazení, filtrování a seskupování pouze v případě, že je delegovaný zobrazení podporovalo.

Následující příklad ukazuje, jak seřadit obsah pojmenovaného ListBoxmyListBox. V tomto příkladu je název vlastnosti, Content podle které chcete řadit.

myListBox.Items.SortDescriptions.Add(
    new SortDescription("Content", ListSortDirection.Descending));
myListBox.Items.SortDescriptions.Add(New SortDescription("Content", ListSortDirection.Descending))

Když to uděláte, zobrazení může nebo nemusí být výchozím zobrazením v závislosti na tom, jak jsou data nastavena na vašem ItemsControl. Například když ItemsSource je vlastnost vázána na , CollectionViewSourcezobrazení, které získáte pomocí Items vlastnosti, není výchozí zobrazení.

Pokud je vaše ItemsControl vlastnost svázaná (používáte ItemsSource tuto vlastnost), můžete následujícím postupem zobrazit výchozí zobrazení:

CollectionView myView;
Private myView As CollectionView
myView = (CollectionView)CollectionViewSource.GetDefaultView(myItemsControl.ItemsSource);
myView = CType(CollectionViewSource.GetDefaultView(myItemsControl.ItemsSource), CollectionView)

Alternativně můžete v xaml zadat kritéria filtrování, řazení a seskupování pomocí CollectionViewSource.

Poznámky

ItemCollection udržuje kolekci položek, jako jsou řetězce, objekty, uzly XML, prvky a další kolekce. K ItemsControl vygenerování obsahu používá data v objektu ItemCollection . Pokud chcete agregovat více než jednu kolekci, přiřaďte CompositeCollection vlastnost ItemsSource své ItemsControl.

Items Pomocí vlastnosti nebo ItemsSource vlastnosti určete kolekci, která se má použít k vygenerování obsahu vašeho ItemsControlsouboru . ItemsSource Když je vlastnost nastavena, Items kolekce bude určena jen pro čtení a pevná velikost. To znamená, že pokud tuto vlastnost používáte ItemsSource , nemůžete přidávat, odstraňovat ani měnit položky přímo ItemCollection .

ItemCollection CollectionView je a proto poskytuje funkce zobrazení kolekce, jako je řazení, seskupování a filtrování. Další informace najdete v tématech SortDescriptions, Filter a GroupDescriptions.

Další informace o zobrazeních kolekcí najdete v tématu Přehled datových vazeb.

Vlastnosti

Name Description
AllowsCrossThreadChanges

Získá hodnotu, která určuje, zda vlákno jiné než vlákno, který vytvořil CollectionView může změnit SourceCollection.

(Zděděno od CollectionView)
CanChangeLiveFiltering

Získá hodnotu, která označuje, zda zobrazení kolekce podporuje zapnutí nebo vypnutí filtrování dat v reálném čase.

CanChangeLiveGrouping

Získá hodnotu, která označuje, zda zobrazení kolekce podporuje zapnutí nebo vypnutí seskupování dat v reálném čase.

CanChangeLiveSorting

Získá hodnotu, která označuje, zda zobrazení kolekce podporuje zapnutí nebo vypnutí řazení dat v reálném čase.

CanFilter

Získá hodnotu, která označuje, zda toto zobrazení kolekce podporuje filtrování.

CanGroup

Získá hodnotu, která označuje, zda toto zobrazení kolekce podporuje seskupení.

CanSort

Získá hodnotu, která označuje, zda toto zobrazení kolekce podporuje řazení.

Comparer

Vrátí objekt, který můžete použít k porovnání položek v zobrazení.

(Zděděno od CollectionView)
Count

Získá počet záznamů v kolekci.

Culture

Získá nebo nastaví informace jazykové verze, které se mají použít při řazení.

(Zděděno od CollectionView)
CurrentItem

Získá aktuální položku v zobrazení.

CurrentPosition

Získá pořadí pořadové pozice aktuální položky v zobrazení.

Dispatcher

Dispatcher Získá toto DispatcherObject je přidružené.

(Zděděno od DispatcherObject)
Filter

Získá nebo nastaví zpětné volání použité k určení, zda je položka vhodná pro zahrnutí do zobrazení.

GroupDescriptions

Získá kolekci GroupDescription objektů, které definují, jak seskupit položky.

Groups

Získá skupiny nejvyšší úrovně, které jsou sestaveny podle GroupDescriptions.

IsCurrentAfterLast

Získá hodnotu, která určuje, zda aktuální položka zobrazení je mimo konec kolekce.

IsCurrentBeforeFirst

Získá hodnotu, která určuje, zda aktuální položka zobrazení je nad rámec začátku kolekce.

IsCurrentInSync

Získá hodnotu, která určuje, zda CurrentItem je na CurrentPosition.

(Zděděno od CollectionView)
IsDynamic

Získá hodnotu, která označuje, zda podkladová kolekce poskytuje oznámení o změnách.

(Zděděno od CollectionView)
IsEmpty

Získá hodnotu, která určuje, zda je výsledné (filtrované) zobrazení prázdné.

IsInUse

Získá hodnotu, která označuje, zda jakýkoli objekt se přihlašuje k odběru událostí tohoto CollectionView.

(Zděděno od CollectionView)
IsLiveFiltering

Získá nebo nastaví hodnotu, která označuje, zda je filtrování dat v reálném čase povoleno.

IsLiveGrouping

Získá nebo nastaví hodnotu, která označuje, zda je povoleno seskupování dat v reálném čase.

IsLiveSorting

Získá nebo nastaví hodnotu, která označuje, zda je řazení v reálném čase povoleno.

IsRefreshDeferred

Získá hodnotu, která označuje, zda existuje nevyužité DeferRefresh() použití.

(Zděděno od CollectionView)
Item[Int32]

Získá nebo nastaví položku v daném indexu založeném na nule.

LiveFilteringProperties

Získá kolekci řetězců, které určují vlastnosti, které se účastní filtrování dat v reálném čase.

LiveGroupingProperties

Získá kolekci řetězců, které určují vlastnosti, které se účastní seskupení dat v reálném čase.

LiveSortingProperties

Získá kolekci řetězců, které určují vlastnosti, které se účastní řazení dat v reálném čase.

NeedsRefresh

Získá hodnotu, která označuje, zda kolekce musí být aktualizována.

SortDescriptions

Získá kolekci SortDescription objektů, které popisují, jak položky v kolekci jsou seřazeny v zobrazení.

SourceCollection

Získá neseřazenou a nefiltrovanou kolekci, která je základem tohoto zobrazení kolekce.

UpdatedOutsideDispatcher

Získá hodnotu, která označuje, zda bylo nutné aktualizovat protokol změn, protože CollectionChanged oznámení bylo přijato v jiném vlákně bez prvního zadání dispečer uživatelského rozhraní (UI).

(Zděděno od CollectionView)

Metody

Name Description
Add(Object)

Přidá položku do objektu ItemCollection.

CheckAccess()

Určuje, zda volající vlákno má přístup k tomuto DispatcherObject.

(Zděděno od DispatcherObject)
Clear()

Vymaže kolekci a uvolní odkazy na všechny položky aktuálně v kolekci.

ClearChangeLog()
Zastaralé.

Vymaže všechny čekající změny z protokolu změn.

(Zděděno od CollectionView)
ClearPendingChanges()

Vymaže nezpracované změny v kolekci.

(Zděděno od CollectionView)
Contains(Object)

Vrátí hodnotu, která určuje, zda je zadaná položka v tomto zobrazení.

CopyTo(Array, Int32)

Zkopíruje prvky kolekce do pole počínaje konkrétním indexem pole.

DeferRefresh()

Zadá odložit cyklus, který můžete použít ke sloučení změn zobrazení a zpoždění automatické aktualizace.

DetachFromSourceCollection()

Odebere odkaz na podkladovou kolekci z objektu CollectionView.

(Zděděno od CollectionView)
Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetEnumerator()

Vrátí objekt, který můžete použít k vytvoření výčtu položek v zobrazení.

(Zděděno od CollectionView)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetItemAt(Int32)

Vrátí položku v zadaném indexu založeném na nule v tomto zobrazení.

GetType()

Získá Type aktuální instance.

(Zděděno od Object)
IndexOf(Object)

Vrátí index v této kolekci, kde je zadaná položka umístěna.

Insert(Int32, Object)

Vloží prvek do kolekce v zadaném indexu.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
MoveCurrentTo(Object)

Nastaví zadanou položku v kolekci CurrentItemjako .

MoveCurrentToFirst()

Nastaví první položku v zobrazení jako CurrentItempoložku .

MoveCurrentToLast()

Nastaví poslední položku v zobrazení jako CurrentItem.

MoveCurrentToNext()

Nastaví položku za položkou CurrentItem v zobrazení jako CurrentItem.

MoveCurrentToPosition(Int32)

Nastaví položku v zadaném indexu tak CurrentItem , aby byla v zobrazení.

MoveCurrentToPrevious()

Nastaví položku před položkou CurrentItem v zobrazení jako CurrentItem.

OKToChangeCurrent()

Vrátí hodnotu, která určuje, zda zobrazení může změnit, která položka je CurrentItem.

(Zděděno od CollectionView)
OnAllowsCrossThreadChangesChanged()

Nastane, když se AllowsCrossThreadChanges vlastnost změní.

(Zděděno od CollectionView)
OnBeginChangeLogging(NotifyCollectionChangedEventArgs)
Zastaralé.

Volá se základní třídou, která upozorní odvozenou CollectionChanged třídu, že událost byla odeslána do fronty zpráv.

(Zděděno od CollectionView)
OnCollectionChanged(NotifyCollectionChangedEventArgs)

CollectionChanged Vyvolá událost.

(Zděděno od CollectionView)
OnCollectionChanged(Object, NotifyCollectionChangedEventArgs)

CollectionChanged Vyvolá událost.

(Zděděno od CollectionView)
OnCurrentChanged()

CurrentChanged Vyvolá událost.

(Zděděno od CollectionView)
OnCurrentChanging()

CurrentChanging Vyvolá událost, která není možné zrušit.

(Zděděno od CollectionView)
OnCurrentChanging(CurrentChangingEventArgs)

CurrentChanging Vyvolá událost se zadanými argumenty.

(Zděděno od CollectionView)
OnPropertyChanged(PropertyChangedEventArgs)

PropertyChanged Vyvolá událost pomocí zadaných argumentů.

(Zděděno od CollectionView)
PassesFilter(Object)

Vrátí hodnotu, která určuje, zda zadaná položka patří do tohoto zobrazení.

ProcessCollectionChanged(NotifyCollectionChangedEventArgs)

Při přepsání v odvozené třídě zpracovává jednu změnu ve vlákně uživatelského rozhraní.

(Zděděno od CollectionView)
ProcessPendingChanges()

Zajišťuje, že byly potvrzeny všechny čekající změny v kolekci.

(Zděděno od CollectionView)
Refresh()

Znovu vytvoří zobrazení.

(Zděděno od CollectionView)
RefreshOrDefer()

Aktualizuje zobrazení nebo určuje, že se má po dokončení cyklu odložit cyklus aktualizovat.

(Zděděno od CollectionView)
RefreshOverride()

Znovu vytvoří zobrazení.

(Zděděno od CollectionView)
Remove(Object)

Odebere zadaný odkaz na položku z kolekce nebo zobrazení.

RemoveAt(Int32)

Odebere položku v zadaném indexu kolekce nebo zobrazení.

SetCurrent(Object, Int32, Int32)

Nastaví zadanou položku a index jako hodnoty CurrentItem a CurrentPosition vlastnosti. Tuto metodu lze volat z konstruktoru odvozené třídy.

(Zděděno od CollectionView)
SetCurrent(Object, Int32)

Nastaví zadanou položku a index jako hodnoty CurrentItem a CurrentPosition vlastnosti.

(Zděděno od CollectionView)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
VerifyAccess()

Vynucuje, že volající vlákno má přístup k tomuto DispatcherObject.

(Zděděno od DispatcherObject)

Událost

Name Description
CollectionChanged

Nastane, když se zobrazení změnilo.

(Zděděno od CollectionView)
CurrentChanged

Nastane po CurrentItem změně.

(Zděděno od CollectionView)
CurrentChanging

Nastane při CurrentItem změně.

(Zděděno od CollectionView)
PropertyChanged

Vyvolá se při změně hodnoty vlastnosti.

(Zděděno od CollectionView)

Explicitní implementace rozhraní

Name Description
ICollection.IsSynchronized

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určená k použití přímo z vašeho kódu.

ICollection.SyncRoot

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určená k použití přímo z vašeho kódu.

IEditableCollectionView.AddNew()

Přidá do kolekce novou položku.

IEditableCollectionView.CanAddNew

Získá hodnotu, která určuje, zda lze do kolekce přidat novou položku.

IEditableCollectionView.CanCancelEdit

Získá hodnotu, která označuje, zda zobrazení kolekce může zahodit čekající změny a obnovit původní hodnoty editovaného objektu.

IEditableCollectionView.CancelEdit()

Ukončí transakci úprav a pokud je to možné, obnoví původní hodnotu položky.

IEditableCollectionView.CancelNew()

Ukončí transakci přidání a zahodí čekající novou položku.

IEditableCollectionView.CanRemove

Získá hodnotu, která označuje, zda lze položku odebrat z kolekce.

IEditableCollectionView.CommitEdit()

Ukončí transakci úprav a uloží čekající změny.

IEditableCollectionView.CommitNew()

Ukončí transakci přidání a uloží čekající novou položku.

IEditableCollectionView.CurrentAddItem

Získá položku, která je přidána během aktuální přidání transakce.

IEditableCollectionView.CurrentEditItem

Získá položku v kolekci, která se upravuje.

IEditableCollectionView.EditItem(Object)

Zahájí transakci úprav zadané položky.

IEditableCollectionView.IsAddingNew

Získá hodnotu, která indikuje, zda probíhá přidání transakce.

IEditableCollectionView.IsEditingItem

Získá hodnotu, která označuje, zda edit transakce probíhá.

IEditableCollectionView.NewItemPlaceholderPosition

Získá nebo nastaví pozici zástupného symbolu nové položky v zobrazení kolekce.

IEditableCollectionView.Remove(Object)

Odebere zadanou položku z kolekce.

IEditableCollectionView.RemoveAt(Int32)

Odebere položku na zadané pozici z kolekce.

IEditableCollectionViewAddNewItem.AddNewItem(Object)

Přidá zadaný objekt do kolekce.

IEditableCollectionViewAddNewItem.CanAddNewItem

Získá hodnotu, která určuje, zda zadaný objekt lze přidat do kolekce.

IEnumerable.GetEnumerator()

IEnumerator Vrátí objekt, který můžete použít k vytvoření výčtu položek v zobrazení.

(Zděděno od CollectionView)
IItemProperties.ItemProperties

Získá kolekci obsahující informace o vlastnostech, které jsou k dispozici u položek v kolekci.

IList.IsFixedSize

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určená k použití přímo z vašeho kódu.

IList.IsReadOnly

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určená k použití přímo z vašeho kódu.

INotifyCollectionChanged.CollectionChanged

Nastane, když se zobrazení změnilo.

(Zděděno od CollectionView)
INotifyPropertyChanged.PropertyChanged

Nastane, když se změní hodnota vlastnosti.

(Zděděno od CollectionView)
IWeakEventListener.ReceiveWeakEvent(Type, Object, EventArgs)

Přijímá události od centralizovaného správce událostí.

Metody rozšíření

Name Description
AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede IEnumerable na IQueryable.

Cast<TResult>(IEnumerable)

Přetypuje prvky IEnumerable na zadaný typ.

OfType<TResult>(IEnumerable)

Filtruje prvky IEnumerable na základě zadaného typu.

Platí pro

Viz také