ItemCollection Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Contiene la lista de elementos que constituyen el contenido de una clase 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
- Herencia
- Atributos
- Implementaciones
Ejemplos
Si tiene , ItemsControlcomo un ListBox objeto que tiene contenido, puede usar la Items propiedad para tener acceso ItemCollectiona , que es una vista. Dado que es una vista, puede usar las funcionalidades relacionadas con la vista, como la ordenación, el filtrado y la agrupación. Tenga en cuenta que, cuando se establece ItemsSource, las operaciones de vista delegan en la vista sobre la colección ItemsSource. Por lo tanto, ItemCollection admite la ordenación, el filtrado y la agrupación solo si la vista delegada las admite.
En el ejemplo siguiente se muestra cómo ordenar el contenido de un ListBox objeto denominado myListBox
. En este ejemplo, Content
es el nombre de la propiedad por la que se va a ordenar.
myListBox.Items.SortDescriptions.Add(
new SortDescription("Content", ListSortDirection.Descending));
myListBox.Items.SortDescriptions.Add(New SortDescription("Content", ListSortDirection.Descending))
Al hacerlo, la vista podría ser o no la predeterminada, en función de cómo se configuran los datos en ItemsControl. Por ejemplo, cuando la ItemsSource propiedad está enlazada a , CollectionViewSourcela vista que se obtiene con la Items propiedad no es la vista predeterminada.
ItemsControl Si está enlazado (está usando la ItemsSource propiedad ), puede hacer lo siguiente para obtener la vista predeterminada:
CollectionView myView;
Private myView As CollectionView
myView = (CollectionView)CollectionViewSource.GetDefaultView(myItemsControl.ItemsSource);
myView = CType(CollectionViewSource.GetDefaultView(myItemsControl.ItemsSource), CollectionView)
Como alternativa, puedes especificar criterios de filtrado, ordenación y agrupación en XAML mediante CollectionViewSource.
Comentarios
ItemCollection mantiene una colección de elementos como cadenas, objetos, nodos XML, elementos y otras colecciones. utiliza ItemsControl los datos de ItemCollection para generar su contenido. Si desea agregar más de una colección, asigne un CompositeCollection a la ItemsSource propiedad de .ItemsControl
Use la Items propiedad o la ItemsSource propiedad para especificar la colección que se debe usar para generar el contenido de .ItemsControl Cuando se establece la ItemsSource propiedad , la Items colección se hará de solo lectura y de tamaño fijo. Esto significa que si usa la ItemsSource propiedad , no puede agregar, eliminar ni cambiar elementos directamente.ItemCollection
ItemCollection es y CollectionView , por tanto, proporciona funcionalidades de vista de colección, como la ordenación, la agrupación y el filtrado. Para obtener más información, vea SortDescriptions, Filter y GroupDescriptions.
Para obtener más información sobre las vistas de recopilación, consulte Información general sobre el enlace de datos.
Propiedades
AllowsCrossThreadChanges |
Obtiene un valor que indica si un subproceso distinto del que creó CollectionView puede cambiar el objeto SourceCollection. (Heredado de CollectionView) |
CanChangeLiveFiltering |
Obtiene un valor que indica si la vista de colección admite la activación o desactivación del filtrado de datos en tiempo real. |
CanChangeLiveGrouping |
Obtiene un valor que indica si la vista de colección admite activar o desactivar la agrupación de datos en tiempo real. |
CanChangeLiveSorting |
Obtiene un valor que indica si la vista de colección admite activar o desactivar la ordenación de datos en tiempo real. |
CanFilter |
Obtiene un valor que indica si esta vista de la recolección admite el filtrado. |
CanGroup |
Obtiene un valor que indica si esta vista de la recolección admite la agrupación. |
CanSort |
Obtiene un valor que indica si esta vista de la recolección admite la ordenación. |
Comparer |
Devuelve un objeto que puede usar para comparar los elementos de la vista. (Heredado de CollectionView) |
Count |
Obtiene el número de registros de la recolección. |
Culture |
Obtiene o establece la información de referencia cultural que se va a usar durante la ordenación. (Heredado de CollectionView) |
CurrentItem |
Obtiene el elemento actual de la vista. |
CurrentPosition |
Obtiene la posición ordinal del elemento actual dentro de la vista. |
Dispatcher |
Obtiene el objeto Dispatcher al que está asociado DispatcherObject. (Heredado de DispatcherObject) |
Filter |
Obtiene o establece una devolución de llamada que se usa para determinar si un elemento es adecuado para su inclusión en la vista. |
GroupDescriptions |
Obtiene una recolección de objetos GroupDescription que define cómo agrupar los elementos. |
Groups |
Obtiene los grupos de nivel superior que se construyen según GroupDescriptions. |
IsCurrentAfterLast |
Obtiene un valor que indica si el elemento actual de la vista está más allá del final de la recolección. |
IsCurrentBeforeFirst |
Obtiene un valor que indica si el elemento actual de la vista está más allá del inicio de la recolección. |
IsCurrentInSync |
Obtiene un valor que indica si la propiedad CurrentItem está en la propiedad CurrentPosition. (Heredado de CollectionView) |
IsDynamic |
Obtiene un valor que indica si la colección subyacente proporciona notificaciones de cambios. (Heredado de CollectionView) |
IsEmpty |
Obtiene un valor que indica si la vista resultante (filtrada) está vacía. |
IsInUse |
Obtiene un valor que indica si algún objeto está suscribiendo a los eventos de este objeto CollectionView. (Heredado de CollectionView) |
IsLiveFiltering |
Obtiene o establece un valor que indica si está habilitado el filtrado de datos en tiempo real. |
IsLiveGrouping |
Obtiene o establece un valor que indica si está habilitado la agrupación de datos en tiempo real. |
IsLiveSorting |
Obtiene o establece un valor que indica si está habilitado la ordenación en tiempo real. |
IsRefreshDeferred |
Obtiene un valor que indica si hay un método DeferRefresh() pendiente en uso. (Heredado de CollectionView) |
Item[Int32] |
Obtiene o establece el elemento en el índice de base cero determinado. |
LiveFilteringProperties |
Obtiene una colección de cadenas que especifican las propiedades que participan en el filtrado de datos en tiempo real. |
LiveGroupingProperties |
Obtiene una colección de cadenas que especifican las propiedades que participan en la agrupación de datos en tiempo real. |
LiveSortingProperties |
Obtiene una colección de cadenas que especifican las propiedades que participan en la ordenación de datos en tiempo real. |
NeedsRefresh |
Obtiene un valor que indica si se debe actualizar la recolección. |
SortDescriptions |
Obtiene una colección de objetos SortDescription que describen cómo se ordenan los elementos de la colección en la vista. |
SourceCollection |
Obtiene la recolección sin ordenar y sin filtrar que subyace en esta vista de la recolección. |
UpdatedOutsideDispatcher |
Obtiene un valor que indica si ha sido necesario actualizar el registro de cambios porque se ha recibido una CollectionChanged notificación en un subproceso diferente sin escribir primero el distribuidor de subprocesos de la interfaz de usuario (UI). (Heredado de CollectionView) |
Métodos
Add(Object) |
Agrega un elemento a ItemCollection. |
CheckAccess() |
Determina si el subproceso de la llamada tiene acceso a DispatcherObject. (Heredado de DispatcherObject) |
Clear() |
Borra la recolección y libera las referencias de todos los elementos que están actualmente en la recolección. |
ClearChangeLog() |
Obsoletos.
Borra los cambios pendientes del registro de cambios. (Heredado de CollectionView) |
ClearPendingChanges() |
Borra los cambios sin procesar de la colección. (Heredado de CollectionView) |
Contains(Object) |
Devuelve un valor que indica si el elemento especificado está en esta vista. |
CopyTo(Array, Int32) |
Copia los elementos de la colección en una matriz a partir de un índice de matriz concreto. |
DeferRefresh() |
Especifica un ciclo de aplazamiento que puede usar para fusionar mediante combinación los cambios en la vista y retrasar la actualización automática. |
DetachFromSourceCollection() |
Quita la referencia a la colección subyacente del CollectionView. (Heredado de CollectionView) |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetEnumerator() |
Devuelve un objeto que puede usar para enumerar los elementos de la vista. (Heredado de CollectionView) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetItemAt(Int32) |
Devuelve el elemento en el índice de base cero especificado de esta vista. |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
IndexOf(Object) |
Devuelve el índice de esta recolección donde se encuentra el elemento especificado. |
Insert(Int32, Object) |
Inserta un elemento en la colección en el índice especificado. |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
MoveCurrentTo(Object) |
Establece el elemento especificado en la recolección como la propiedad CurrentItem. |
MoveCurrentToFirst() |
Establece el primer elemento de la vista como CurrentItem. |
MoveCurrentToLast() |
Establece el último elemento de la vista como CurrentItem. |
MoveCurrentToNext() |
Establece el elemento situado después de CurrentItem en la vista como CurrentItem. |
MoveCurrentToPosition(Int32) |
Establece que el elemento en el índice especificado sea la propiedad CurrentItem de la vista. |
MoveCurrentToPrevious() |
Establece el elemento situado delante de la propiedad CurrentItem de la vista como la propiedad CurrentItem. |
OKToChangeCurrent() |
Devuelve un valor que indica si la vista puede cambiar el elemento que es la propiedad CurrentItem. (Heredado de CollectionView) |
OnAllowsCrossThreadChangesChanged() |
Se produce cuando cambia la propiedad AllowsCrossThreadChanges. (Heredado de CollectionView) |
OnBeginChangeLogging(NotifyCollectionChangedEventArgs) |
Obsoletos.
La clase base llama a este método para notificar a la clase derivada que se ha enviado un evento CollectionChanged a la cola de mensajes. (Heredado de CollectionView) |
OnCollectionChanged(NotifyCollectionChangedEventArgs) |
Genera el evento CollectionChanged. (Heredado de CollectionView) |
OnCollectionChanged(Object, NotifyCollectionChangedEventArgs) |
Genera el evento CollectionChanged. (Heredado de CollectionView) |
OnCurrentChanged() |
Genera el evento CurrentChanged. (Heredado de CollectionView) |
OnCurrentChanging() |
Provoca un evento CurrentChanging que no se puede cancelar. (Heredado de CollectionView) |
OnCurrentChanging(CurrentChangingEventArgs) |
Provoca el evento CurrentChanging con los argumentos especificados. (Heredado de CollectionView) |
OnPropertyChanged(PropertyChangedEventArgs) |
Provoca el evento PropertyChanged utilizando los argumentos especificados. (Heredado de CollectionView) |
PassesFilter(Object) |
Devuelve un valor que indica si el elemento especificado pertenece a esta vista. |
ProcessCollectionChanged(NotifyCollectionChangedEventArgs) |
Cuando se reemplaza en una clase derivada, procesa un único cambio en el subproceso de la interfaz de usuario. (Heredado de CollectionView) |
ProcessPendingChanges() |
Garantiza que todos los cambios pendientes a la colección se han confirmado. (Heredado de CollectionView) |
Refresh() |
Vuelve a crear la vista. (Heredado de CollectionView) |
RefreshOrDefer() |
Actualiza la vista o especifica que se debe actualizar cuando termine el ciclo de aplazamiento. (Heredado de CollectionView) |
RefreshOverride() |
Vuelve a crear la vista. (Heredado de CollectionView) |
Remove(Object) |
Quita la referencia del elemento especificada de la recolección o vista. |
RemoveAt(Int32) |
Quita el elemento en el índice especificado de la recolección o vista. |
SetCurrent(Object, Int32) |
Establece el elemento y el índice especificados como valores de las propiedades CurrentItem y CurrentPosition. (Heredado de CollectionView) |
SetCurrent(Object, Int32, Int32) |
Establece el elemento y el índice especificados como valores de las propiedades CurrentItem y CurrentPosition. Se puede llamar a este método desde un constructor de una clase derivada. (Heredado de CollectionView) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
VerifyAccess() |
Exige que el subproceso de la llamada tenga acceso a DispatcherObject. (Heredado de DispatcherObject) |
Eventos
CollectionChanged |
Se produce cuando la vista ha cambiado. (Heredado de CollectionView) |
CurrentChanged |
Se produce después de que haya cambiado la propiedad CurrentItem. (Heredado de CollectionView) |
CurrentChanging |
Se produce cuando cambia la propiedad CurrentItem. (Heredado de CollectionView) |
PropertyChanged |
Se produce cuando cambia el valor de una propiedad. (Heredado de CollectionView) |
Implementaciones de interfaz explícitas
ICollection.IsSynchronized |
Este miembro admite la infraestructura de Windows Presentation Foundation (WPF) y no está pensada para usarse directamente desde el código. |
ICollection.SyncRoot |
Este miembro admite la infraestructura de Windows Presentation Foundation (WPF) y no está pensada para usarse directamente desde el código. |
IEditableCollectionView.AddNew() |
Agrega un nuevo elemento a la colección. |
IEditableCollectionView.CanAddNew |
Obtiene un valor que indica si puede agregarse un elemento nuevo a la colección. |
IEditableCollectionView.CanCancelEdit |
Obtiene un valor que indica si la vista de colección puede descartar los cambios pendientes y restaurar los valores originales de un objeto editado. |
IEditableCollectionView.CancelEdit() |
Finaliza la transacción de edición y, si es posible, restaura el valor original del elemento. |
IEditableCollectionView.CancelNew() |
Finaliza la transacción de adición y descarta el nuevo elemento pendiente. |
IEditableCollectionView.CanRemove |
Obtiene un valor que indica si un elemento puede quitarse de la colección. |
IEditableCollectionView.CommitEdit() |
Finaliza la transacción de edición y guarda los cambios pendientes. |
IEditableCollectionView.CommitNew() |
Finaliza la transacción de adición y guarda el nuevo elemento pendiente. |
IEditableCollectionView.CurrentAddItem |
Obtiene el elemento que se está agregando durante la transacción de adición actual. |
IEditableCollectionView.CurrentEditItem |
Obtiene el elemento de la colección que se está editando. |
IEditableCollectionView.EditItem(Object) |
Inicia una transacción de edición del elemento especificado. |
IEditableCollectionView.IsAddingNew |
Obtiene un valor que indica si hay una transacción de adición en curso. |
IEditableCollectionView.IsEditingItem |
Obtiene un valor que indica si hay una transacción de edición en curso. |
IEditableCollectionView.NewItemPlaceholderPosition |
Obtiene o establece la posición del nuevo marcador de posición de elemento en la vista de colección. |
IEditableCollectionView.Remove(Object) |
Quita el elemento especificado de la colección. |
IEditableCollectionView.RemoveAt(Int32) |
Quita de la colección un elemento situado en la posición especificada. |
IEditableCollectionViewAddNewItem.AddNewItem(Object) |
Agrega a la colección el objeto especificado. |
IEditableCollectionViewAddNewItem.CanAddNewItem |
Obtiene un valor que indica si el objeto especificado puede agregarse a la colección. |
IEnumerable.GetEnumerator() |
Devuelve un objeto IEnumerator que puede usar para enumerar los elementos de la vista. (Heredado de CollectionView) |
IItemProperties.ItemProperties |
Obtiene una colección que contiene información sobre las propiedades que están disponibles en los elementos de una colección. |
IList.IsFixedSize |
Este miembro admite la infraestructura de Windows Presentation Foundation (WPF) y no está pensada para usarse directamente desde el código. |
IList.IsReadOnly |
Este miembro admite la infraestructura de Windows Presentation Foundation (WPF) y no está pensada para usarse directamente desde el código. |
INotifyCollectionChanged.CollectionChanged |
Se produce cuando la vista ha cambiado. (Heredado de CollectionView) |
INotifyPropertyChanged.PropertyChanged |
Tiene lugar cuando cambia un valor de propiedad. (Heredado de CollectionView) |
IWeakEventListener.ReceiveWeakEvent(Type, Object, EventArgs) |
Recibe los eventos del administrador de eventos centralizado. |
Métodos de extensión
Cast<TResult>(IEnumerable) |
Convierte los elementos de IEnumerable en el tipo especificado. |
OfType<TResult>(IEnumerable) |
Filtra los elementos de IEnumerable en función de un tipo especificado. |
AsParallel(IEnumerable) |
Habilita la paralelización de una consulta. |
AsQueryable(IEnumerable) |
Convierte una interfaz IEnumerable en IQueryable. |