ItemCollection Klasse

Definition

Enthält die Liste der Elemente, die den Inhalt eines ItemsControl bilden.

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
Vererbung
Attribute
Implementiert

Beispiele

Wenn Sie einen ItemsControlhaben, z. B. einen ListBox , der Inhalt enthält, können Sie die Items -Eigenschaft verwenden, um auf die ItemCollection-Ansicht zuzugreifen. Da es sich um eine Ansicht handelt, können Sie dann die ansichtsbezogenen Funktionen wie Sortieren, Filtern und Gruppieren verwenden. Beachten Sie, dass beim Festlegen von ItemsSource die Ansichtsvorgänge an die Ansicht über die ItemsSource-Auflistung delegieren. Daher unterstützt itemCollection das Sortieren, Filtern und Gruppieren nur, wenn die delegierte Ansicht sie unterstützt.

Das folgende Beispiel zeigt, wie der Inhalt eines ListBox namens sortiert wird myListBox. In diesem Beispiel ist der Name der Eigenschaft, Content nach der sortiert werden soll.

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

Wenn Sie dies tun, kann die Ansicht die Standardansicht sein oder nicht, je nachdem, wie die Daten in Ihrem ItemsControleingerichtet werden. Wenn die ItemsSource Eigenschaft beispielsweise an eine CollectionViewSourcegebunden ist, ist die Ansicht, die Sie mithilfe der Items -Eigenschaft abrufen, nicht die Standardansicht.

Wenn Ihre ItemsControl gebunden ist (Sie verwenden die ItemsSource -Eigenschaft), können Sie die folgende Vorgehensweise ausführen, um die Standardansicht abzurufen:

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

Alternativ können Sie Filter-, Sortier- und Gruppierungskriterien in XAML mit CollectionViewSourceangeben.

Hinweise

ItemCollection verwaltet eine Auflistung von Elementen, z. B. Zeichenfolgen, Objekte, XML-Knoten, Elemente und andere Sammlungen. Ein ItemsControl verwendet die Daten in, ItemCollection um seinen Inhalt zu generieren. Wenn Sie mehrere Auflistungen aggregieren möchten, weisen Sie der ItemsSource -Eigenschaft ihres ItemsControleine CompositeCollection zu.

Verwenden Sie entweder die Items -Eigenschaft oder die ItemsSource -Eigenschaft, um die Auflistung anzugeben, die zum Generieren des Inhalts Ihrer ItemsControlverwendet werden soll. Wenn die ItemsSource -Eigenschaft festgelegt ist, wird die Items Auflistung als schreibgeschützt und mit fester Größe festgelegt. Dies bedeutet, dass Sie bei Verwendung der ItemsSource -Eigenschaft keine Elemente direkt ItemCollection hinzufügen, löschen oder ändern können.

ItemCollection ist ein CollectionView und bietet daher Funktionen der Sammlungsansicht, z. B. Sortieren, Gruppieren und Filtern. Weitere Informationen finden Sie unter SortDescriptions, Filter und GroupDescriptions.

Weitere Informationen zu Sammlungsansichten finden Sie unter Übersicht über die Datenbindung.

Eigenschaften

AllowsCrossThreadChanges

Ruft einen Wert ab, der angibt, ob ein anderer Thread als der Thread, der CollectionView erstellt hat, SourceCollection ändern kann.

(Geerbt von CollectionView)
CanChangeLiveFiltering

Ruft einen Wert ab, der angibt, ob die Auflistungsansicht das Ein- oder Ausschalten von Filterdaten in Echtzeit unterstützt.

CanChangeLiveGrouping

Ruft einen Wert ab, der angibt, ob die Auflistungsansicht Aktivieren/Deaktivieren von Gruppieren von Daten in Echtzeit unterstützt.

CanChangeLiveSorting

Ruft einen Wert ab, der angibt, ob die Auflistungsansicht Aktivieren/Deaktivieren von Sortieren von Daten in Echtzeit unterstützt.

CanFilter

Ruft einen Wert ab, der angibt, ob diese Auflistungsansicht das Filtern unterstützt.

CanGroup

Ruft einen Wert ab, der angibt, ob diese Auflistungsansicht das Gruppieren unterstützt.

CanSort

Ruft einen Wert ab, der angibt, ob diese Auflistungsansicht das Sortieren unterstützt.

Comparer

Gibt ein Objekt zurück, mit dem Sie die Elemente in der Ansicht vergleichen können.

(Geerbt von CollectionView)
Count

Ruft die Anzahl der Datensätze in der Auflistung ab.

Culture

Ruft die Kulturinformationen ab, die während der Sortierung verwendet werden sollen, oder legt diese Informationen fest.

(Geerbt von CollectionView)
CurrentItem

Ruft das aktuelle Element in der Ansicht ab.

CurrentPosition

Ruft die Ordinalposition des aktuellen Elements an der Ansicht ab.

Dispatcher

Ruft den Dispatcher ab, der diesem DispatcherObject zugeordnet ist.

(Geerbt von DispatcherObject)
Filter

Ruft den Rückruf ab, der verwendet wird, um zu bestimmen, ob ein Element in die Ansicht eingefügt werden kann, oder legt diesen fest.

GroupDescriptions

Ruft eine Auflistung von GroupDescription-Objekten ab, die die Gruppierung der Elemente definiert.

Groups

Ruft die Gruppen auf oberster Ebene ab, die entsprechend dem GroupDescriptions erstellt werden.

IsCurrentAfterLast

Ruft einen Wert ab, der angibt, ob sich das aktuelle Element der Ansicht hinter dem Ende der Auflistung befindet.

IsCurrentBeforeFirst

Ruft einen Wert ab, der angibt, ob sich das aktuelle Element der Ansicht vor dem Anfang der Auflistung befindet.

IsCurrentInSync

Ruft einen Wert ab, mit dem angegeben wird, ob sich das CurrentItem an der CurrentPosition befindet.

(Geerbt von CollectionView)
IsDynamic

Ruft einen Wert ab, mit dem angegeben wird, ob die zugrunde liegende Auflistung Änderungsbenachrichtigungen bereitstellt.

(Geerbt von CollectionView)
IsEmpty

Ruft einen Wert ab, der angibt, ob die resultierende (gefilterte) Ansicht leer ist.

IsInUse

Ruft einen Wert ab, der angibt, ob ein Objekt Ereignisse aus dieser CollectionView abonniert.

(Geerbt von CollectionView)
IsLiveFiltering

Ruft einen Wert ab, der angibt, ob die Filterung von Daten in Echtzeit aktiviert ist.

IsLiveGrouping

Ruft einen Wert ab, der angibt, ob die Gruppierung von Daten in Echtzeit aktiviert ist.

IsLiveSorting

Ruft einen Wert ab, der angibt, ob die Sortierung in Echtzeit aktiviert ist.

IsRefreshDeferred

Ruft einen Wert ab, mit dem angegeben wird, ob ein ausstehender DeferRefresh() vorhanden ist.

(Geerbt von CollectionView)
Item[Int32]

Ruft das Element am angegebenen nullbasierten Index ab oder legt dieses fest.

LiveFilteringProperties

Ruft eine Auflistung von Zeichenfolgen an, die die Eigenschaften angeben, die am Filtern von Daten in Echtzeit beteiligt sind.

LiveGroupingProperties

Ruft eine Auflistung von Zeichenfolgen ab, die die Eigenschaften angeben, die am Gruppieren von Daten in Echtzeit beteiligt sind.

LiveSortingProperties

Ruft eine Auflistung von Zeichenfolgen ab, die die Eigenschaften angeben, die am Sortieren von Daten in Echtzeit beteiligt sind.

NeedsRefresh

Ruft einen Wert ab, der angibt, ob die Auflistung aktualisiert werden muss.

SortDescriptions

Ruft eine Auflistung der SortDescription-Objekte ab, die die Sortierung der Elemente in der Ansicht beschreiben.

SourceCollection

Ruft die unsortierte und ungefilterte Auflistung ab, die dieser Auflistungsansicht zugrunde liegt.

UpdatedOutsideDispatcher

Ruft einen Wert ab, der angibt, ob das Änderungsprotokoll aktualisiert werden musste, da eine CollectionChanged Benachrichtigung für einen anderen Thread empfangen wurde, ohne zuerst den Threadverteiler der Benutzeroberfläche (UI) einzugeben.

(Geerbt von CollectionView)

Methoden

Add(Object)

Fügt der ItemCollection ein Element hinzu.

CheckAccess()

Bestimmt, ob der aufrufende Thread auf dieses DispatcherObject zugreifen kann.

(Geerbt von DispatcherObject)
Clear()

Leert die Auflistung und gibt die Verweise auf sämtliche Elemente, die sich derzeit in der Auflistung befinden, frei.

ClearChangeLog()
Veraltet.

Löscht alle anstehenden Änderungen aus dem Änderungsprotokoll.

(Geerbt von CollectionView)
ClearPendingChanges()

Löscht nicht verarbeitete Änderungen der Sammlung.

(Geerbt von CollectionView)
Contains(Object)

Gibt einen Wert zurück, der angibt, ob sich das angegebene Element in dieser Ansicht befindet.

CopyTo(Array, Int32)

Kopiert die Elemente der Auflistung in ein Array, wobei an einem bestimmten Arrayindex begonnen wird.

DeferRefresh()

Wechselt in eine Verzögerungsschleife, mit der Sie Änderungen in der Ansicht zusammenführen und die automatische Aktualisierung verzögern können.

DetachFromSourceCollection()

Entfernt den Verweis auf die darunterliegende Auflistung aus der CollectionView.

(Geerbt von CollectionView)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetEnumerator()

Gibt ein Objekt zurück, mit dem Sie die Elemente in der Ansicht auflisten können.

(Geerbt von CollectionView)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetItemAt(Int32)

Gibt das Element am angegebenen nullbasierten Index in dieser Ansicht zurück.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IndexOf(Object)

Gibt den Index in dieser Auflistung zurück, an dem sich das angegebene Element befindet.

Insert(Int32, Object)

Fügt ein Element am angegebenen Index in die Auflistung ein.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
MoveCurrentTo(Object)

Legt das angegebene Element in der Auflistung als das CurrentItem fest.

MoveCurrentToFirst()

Legt das erste Element in der Ansicht als CurrentItem fest.

MoveCurrentToLast()

Legt das letzte Element in der Ansicht als CurrentItem fest.

MoveCurrentToNext()

Legt das Element nach dem CurrentItem in der Ansicht als CurrentItem fest.

MoveCurrentToPosition(Int32)

Legt das Element am angegebenen Index als das CurrentItem in der Ansicht fest.

MoveCurrentToPrevious()

Legt das Element vor CurrentItem in der Ansicht als CurrentItem fest.

OKToChangeCurrent()

Gibt einen Wert zurück, mit dem angegeben wird, ob die Ansicht das CurrentItem-Element ändern kann.

(Geerbt von CollectionView)
OnAllowsCrossThreadChangesChanged()

Tritt ein, wenn sich die AllowsCrossThreadChanges-Eigenschaft ändert.

(Geerbt von CollectionView)
OnBeginChangeLogging(NotifyCollectionChangedEventArgs)
Veraltet.

Wird von der Basisklasse aufgerufen, um die abgeleitete Klasse zu benachrichtigen, dass ein CollectionChanged-Ereignis an die Meldungswarteschlange gesendet wurde.

(Geerbt von CollectionView)
OnCollectionChanged(NotifyCollectionChangedEventArgs)

Löst das CollectionChanged-Ereignis aus.

(Geerbt von CollectionView)
OnCollectionChanged(Object, NotifyCollectionChangedEventArgs)

Löst das CollectionChanged-Ereignis aus.

(Geerbt von CollectionView)
OnCurrentChanged()

Löst das CurrentChanged-Ereignis aus.

(Geerbt von CollectionView)
OnCurrentChanging()

Löst ein CurrentChanging-Ereignis aus, das nicht abgebrochen werden kann.

(Geerbt von CollectionView)
OnCurrentChanging(CurrentChangingEventArgs)

Löst das CurrentChanging-Ereignis mit den angegebenen Argumenten aus.

(Geerbt von CollectionView)
OnPropertyChanged(PropertyChangedEventArgs)

Löst das PropertyChanged-Ereignis mit den angegebenen Argumenten aus.

(Geerbt von CollectionView)
PassesFilter(Object)

Gibt einen Wert zurück, der angibt, ob das angegebene Element zu dieser Ansicht gehört.

ProcessCollectionChanged(NotifyCollectionChangedEventArgs)

Verarbeitet beim Überschreiben in einer abgeleiteten Klasse eine einzelne Änderung im UI-Thread.

(Geerbt von CollectionView)
ProcessPendingChanges()

Stellt sicher, dass für alle ausstehenden Änderungen an der Sammlung ein Commit ausgeführt wurden.

(Geerbt von CollectionView)
Refresh()

Erstellt die Ansicht neu.

(Geerbt von CollectionView)
RefreshOrDefer()

Aktualisiert die Ansicht oder gibt an, dass die Ansicht aktualisiert werden muss, sobald der Verzögerungszyklus abgeschlossen ist.

(Geerbt von CollectionView)
RefreshOverride()

Erstellt die Ansicht neu.

(Geerbt von CollectionView)
Remove(Object)

Entfernt den angegebenen Elementverweis aus der Auflistung oder der Ansicht.

RemoveAt(Int32)

Entfernt das Element am angegebenen Index aus der Auflistung oder der Ansicht.

SetCurrent(Object, Int32)

Legt das angegebene Element und den angegebenen Index als Werte der CurrentItem-Eigenschaft und der CurrentPosition-Eigenschaft fest.

(Geerbt von CollectionView)
SetCurrent(Object, Int32, Int32)

Legt das angegebene Element und den angegebenen Index als Werte der CurrentItem-Eigenschaft und der CurrentPosition-Eigenschaft fest. Diese Methode kann im Konstruktor einer abgeleiteten Klasse aufgerufen werden.

(Geerbt von CollectionView)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
VerifyAccess()

Erzwingt, dass der aufrufende Thread auf dieses DispatcherObject zugreifen kann.

(Geerbt von DispatcherObject)

Ereignisse

CollectionChanged

Tritt auf, wenn die Sicht geändert wurde.

(Geerbt von CollectionView)
CurrentChanged

Tritt ein, nachdem sich CurrentItem geändert hat.

(Geerbt von CollectionView)
CurrentChanging

Tritt ein, wenn der CurrentItem geändert wird.

(Geerbt von CollectionView)
PropertyChanged

Tritt auf, wenn sich ein Eigenschaftswert geändert hat.

(Geerbt von CollectionView)

Explizite Schnittstellenimplementierungen

ICollection.IsSynchronized

Dieses Member unterstützt die WPF-Infrastruktur (Windows Presentation Foundation) und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ICollection.SyncRoot

Dieses Member unterstützt die WPF-Infrastruktur (Windows Presentation Foundation) und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

IEditableCollectionView.AddNew()

Fügt der Auflistung ein neues Element hinzu.

IEditableCollectionView.CanAddNew

Ruft einen Wert ab, der angibt, ob der Auflistung ein neues Element hinzugefügt werden kann.

IEditableCollectionView.CanCancelEdit

Ruft einen Wert ab, der angibt, ob die Auflistungsansicht ausstehende Änderungen verwerfen und die ursprünglichen Werte eines bearbeiteten Objekts wiederherstellen kann.

IEditableCollectionView.CancelEdit()

Beendet die Transaktion zum Bearbeiten und stellt, wenn möglich, den ursprünglichen Wert des Elements wieder her.

IEditableCollectionView.CancelNew()

Beendet die Transaktion zum Hinzufügen und verwirft das ausstehende neue Element.

IEditableCollectionView.CanRemove

Ruft einen Wert ab, der angibt, ob ein Element aus der Auflistung entfernt werden kann.

IEditableCollectionView.CommitEdit()

Beendet die Transaktion zum Bearbeiten und speichert die ausstehenden Änderungen.

IEditableCollectionView.CommitNew()

Beendet die Transaktion zum Hinzufügen und speichert das ausstehende neue Element.

IEditableCollectionView.CurrentAddItem

Ruft das Element ab, das während der aktuellen Hinzufügetransaktion hinzugefügt wird.

IEditableCollectionView.CurrentEditItem

Ruft das Element in der Auflistung ab, das gerade bearbeitet wird.

IEditableCollectionView.EditItem(Object)

Startet eine Transaktion zum Bearbeiten des angegebenen Elements.

IEditableCollectionView.IsAddingNew

Ruft einen Wert ab, der angibt, ob gerade eine Transaktion zum Hinzufügen ausgeführt wird.

IEditableCollectionView.IsEditingItem

Ruft einen Wert ab, der angibt, ob gerade eine Transaktion zum Bearbeiten ausgeführt wird.

IEditableCollectionView.NewItemPlaceholderPosition

Ruft die Position des neuen Elementplatzhalters in der Auflistungsansicht ab oder legt diese fest.

IEditableCollectionView.Remove(Object)

Entfernt das angegebene Element aus der Auflistung.

IEditableCollectionView.RemoveAt(Int32)

Entfernt das Element an der angegebenen Position aus der Auflistung.

IEditableCollectionViewAddNewItem.AddNewItem(Object)

Fügt der Auflistung das angegebene Objekt hinzu.

IEditableCollectionViewAddNewItem.CanAddNewItem

Ruft einen Wert ab, der angibt, ob der Auflistung ein angegebenes Objekt hinzugefügt werden kann.

IEnumerable.GetEnumerator()

Gibt ein IEnumerator-Objekt zurück, mit dem Sie die Elemente in der Ansicht auflisten können.

(Geerbt von CollectionView)
IItemProperties.ItemProperties

Ruft eine Auflistung ab, die Informationen zu den Eigenschaften enthält, die für die Elemente in einer Auflistung verfügbar sind.

IList.IsFixedSize

Dieses Member unterstützt die WPF-Infrastruktur (Windows Presentation Foundation) und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

IList.IsReadOnly

Dieses Member unterstützt die WPF-Infrastruktur (Windows Presentation Foundation) und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

INotifyCollectionChanged.CollectionChanged

Tritt auf, wenn die Sicht geändert wurde.

(Geerbt von CollectionView)
INotifyPropertyChanged.PropertyChanged

Tritt ein, wenn sich ein Eigenschaftswert ändert.

(Geerbt von CollectionView)
IWeakEventListener.ReceiveWeakEvent(Type, Object, EventArgs)

Empfängt Ereignisse vom zentralen Ereignis-Manager.

Erweiterungsmethoden

Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ um

OfType<TResult>(IEnumerable)

Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs

AsParallel(IEnumerable)

Ermöglicht die Parallelisierung einer Abfrage.

AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen IQueryable.

Gilt für:

Weitere Informationen