ItemCollection Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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. |