ItemCollection Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Detém a lista de itens que constituem o conteúdo de um 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
- Herança
- Atributos
- Implementações
Exemplos
Se tiver um ItemsControl, como um ListBox que tenha conteúdo, pode usar a Items propriedade para aceder ao ItemCollection, que é uma vista. Como é uma vista, pode então usar funcionalidades relacionadas com a vista, como ordenação, filtragem e agrupamento. Note que, quando o ItemsSource está definido, as operações de vista delegam para a vista sobre a coleção ItemsSource. Portanto, a ItemCollection suporta ordenação, filtragem e agrupamento apenas se a vista delegada os suportar.
O exemplo seguinte mostra como ordenar o conteúdo de um ListBox .myListBox Neste exemplo, Content é o nome da propriedade a ordenar.
myListBox.Items.SortDescriptions.Add(
new SortDescription("Content", ListSortDirection.Descending));
myListBox.Items.SortDescriptions.Add(New SortDescription("Content", ListSortDirection.Descending))
Quando fazes isto, a vista pode ou não ser a vista padrão, dependendo de como os dados estão configurados no teu ItemsControlarquivo . Por exemplo, quando a ItemsSource propriedade está vinculada a um CollectionViewSource, a vista que obtém usando a Items propriedade não é a vista padrão.
Se o teu ItemsControl for limitado (estás a usar a propriedade ItemsSource ), podes fazer o seguinte para obter a vista padrão:
CollectionView myView;
Private myView As CollectionView
myView = (CollectionView)CollectionViewSource.GetDefaultView(myItemsControl.ItemsSource);
myView = CType(CollectionViewSource.GetDefaultView(myItemsControl.ItemsSource), CollectionView)
Alternativamente, pode especificar critérios de filtragem, ordenação e agrupamento em XAML usando CollectionViewSource.
Observações
ItemCollection mantém uma coleção de itens como strings, objetos, nós XML, elementos e outras coleções. E ItemsControl usa os dados em para ItemCollection gerar o seu conteúdo. Se quiser agregar mais do que uma coleção, atribua a CompositeCollection à ItemsSource propriedade do seu ItemsControl.
Use a Items propriedade ou a ItemsSource propriedade para especificar a coleção que deve ser usada para gerar o conteúdo do seu ItemsControlarquivo . Quando a ItemsSource propriedade é definida, a Items coleção passa a ser apenas de leitura e de tamanho fixo. Isto significa que, se estiver a usar a ItemsSource propriedade, não pode adicionar, eliminar ou alterar itens diretamente na ItemCollection propriedade.
ItemCollection é a CollectionView e, portanto, fornece funcionalidades de vista de coleção, como ordenação, agrupamento e filtragem. Para obter mais informações, consulte SortDescriptions, Filtere GroupDescriptions.
Para mais informações sobre as vistas da coleção, consulte Visão Geral da Ligação de Dados.
Propriedades
| Name | Description |
|---|---|
| AllowsCrossThreadChanges |
Obtém um valor que indica se um thread diferente daquele que criou o CollectionView pode alterar o SourceCollection. (Herdado de CollectionView) |
| CanChangeLiveFiltering |
Recebe um valor que indica se a vista de coleção suporta ativar ou desligar os dados de filtragem em tempo real. |
| CanChangeLiveGrouping |
Recebe um valor que indica se a vista de coleção suporta ativar ou desligar os dados de agrupamento em tempo real. |
| CanChangeLiveSorting |
Recebe um valor que indica se a vista de coleção suporta ativar ou desligar os dados de ordenação em tempo real. |
| CanFilter |
Obtém um valor que indica se esta vista de coleção suporta filtragem. |
| CanGroup |
Obtém um valor que indica se esta vista de coleção suporta agrupamento. |
| CanSort |
Obtém um valor que indica se esta vista de coleção suporta ordenação. |
| Comparer |
Devolve um objeto que pode usar para comparar itens na vista. (Herdado de CollectionView) |
| Count |
Obtém o número de registos na coleção. |
| Culture |
Obtém ou define a informação de cultura para usar durante a triagem. (Herdado de CollectionView) |
| CurrentItem |
Obtém o item atual na vista. |
| CurrentPosition |
Obtém a posição ordinal do item atual dentro da vista. |
| Dispatcher |
Percebe o Dispatcher que isto DispatcherObject está associado. (Herdado de DispatcherObject) |
| Filter |
Recebe ou define um callback usado para determinar se um item é adequado para inclusão na vista. |
| GroupDescriptions |
Obtém uma coleção de GroupDescription objetos que define como agrupar os itens. |
| Groups |
Obtém os grupos de topo que são construídos de acordo com o GroupDescriptions. |
| IsCurrentAfterLast |
Obtém um valor que indica se o item atual da visualização está para além do fim da coleção. |
| IsCurrentBeforeFirst |
Obtém um valor que indica se o item atual da visualização está para além do início da coleção. |
| IsCurrentInSync |
Obtém um valor que indica se o CurrentItem está em .CurrentPosition (Herdado de CollectionView) |
| IsDynamic |
Recebe um valor que indica se a coleção subjacente fornece notificações de alteração. (Herdado de CollectionView) |
| IsEmpty |
Obtém um valor que indica se a vista resultante (filtrada) está vazia. |
| IsInUse |
Obtém um valor que indica se algum objeto está a subscrever os eventos deste CollectionView. (Herdado de CollectionView) |
| IsLiveFiltering |
Recebe ou define um valor que indica se a filtragem de dados em tempo real está ativada. |
| IsLiveGrouping |
Recebe ou define um valor que indica se o agrupamento de dados em tempo real está ativado. |
| IsLiveSorting |
Recebe ou define um valor que indica se a ordenação em tempo real está ativada. |
| IsRefreshDeferred |
Obtém um valor que indica se há um valor em uso.DeferRefresh() (Herdado de CollectionView) |
| Item[Int32] |
Obtém ou define o item no índice zero dado. |
| LiveFilteringProperties |
Obtém uma coleção de cadeias que especificam as propriedades que participam na filtragem de dados em tempo real. |
| LiveGroupingProperties |
Obtém uma coleção de cadeias que especificam as propriedades que participam no agrupamento de dados em tempo real. |
| LiveSortingProperties |
Obtém uma coleção de cadeias que especificam as propriedades que participam na ordenação dos dados em tempo real. |
| NeedsRefresh |
Recebe um valor que indica se a coleção precisa de ser atualizada. |
| SortDescriptions |
Obtém uma coleção de SortDescription objetos que descrevem como os itens da coleção estão organizados na vista. |
| SourceCollection |
Obtém a coleção não ordenada e não filtrada que está na base desta vista de coleção. |
| UpdatedOutsideDispatcher |
Recebe um valor que indica se foi necessário atualizar o registo de alterações porque uma CollectionChanged notificação foi recebida numa thread diferente sem antes introduzir o despachante da thread interface (UI). (Herdado de CollectionView) |
Métodos
| Name | Description |
|---|---|
| Add(Object) |
Adiciona um item ao ItemCollection. |
| CheckAccess() |
Determina se o thread que chama tem acesso a este DispatcherObject. (Herdado de DispatcherObject) |
| Clear() |
Limpa a coleção e liberta as referências de todos os itens atualmente na coleção. |
| ClearChangeLog() |
Obsoleto.
Apaga quaisquer alterações pendentes do registo de alterações. (Herdado de CollectionView) |
| ClearPendingChanges() |
Os compensadores não processados mudaram para a coleção. (Herdado de CollectionView) |
| Contains(Object) |
Devolve um valor que indica se o item especificado está nesta vista. |
| CopyTo(Array, Int32) |
Copia os elementos da coleção para um array, começando num índice particular do array. |
| DeferRefresh() |
Entra num ciclo de adiamento que podes usar para fundir alterações na visualização e atrasar a atualização automática. |
| DetachFromSourceCollection() |
Remove a referência à coleção subjacente do CollectionView. (Herdado de CollectionView) |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetEnumerator() |
Devolve um objeto que podes usar para enumerar os itens na vista. (Herdado de CollectionView) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetItemAt(Int32) |
Devolve o item no índice zero especificado nesta vista. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IndexOf(Object) |
Devolve o índice nesta coleção onde o item especificado está localizado. |
| Insert(Int32, Object) |
Insere um elemento na coleção no índice especificado. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| MoveCurrentTo(Object) |
Define o item especificado na coleção como o CurrentItem. |
| MoveCurrentToFirst() |
Define o primeiro item na vista como o CurrentItem. |
| MoveCurrentToLast() |
Define o último item na vista como o CurrentItem. |
| MoveCurrentToNext() |
Define o item após o CurrentItem na vista como o CurrentItem. |
| MoveCurrentToPosition(Int32) |
Define o item no índice especificado como o CurrentItem na vista. |
| MoveCurrentToPrevious() |
Define o item antes do CurrentItem na vista como o CurrentItem. |
| OKToChangeCurrent() |
Devolve um valor que indica se a vista pode alterar qual item é o CurrentItem. (Herdado de CollectionView) |
| OnAllowsCrossThreadChangesChanged() |
Ocorre quando a AllowsCrossThreadChanges propriedade muda. (Herdado de CollectionView) |
| OnBeginChangeLogging(NotifyCollectionChangedEventArgs) |
Obsoleto.
Chamada pela classe base para notificar a classe derivada de que um CollectionChanged evento foi publicado na fila de mensagens. (Herdado de CollectionView) |
| OnCollectionChanged(NotifyCollectionChangedEventArgs) |
Eleva o CollectionChanged evento. (Herdado de CollectionView) |
| OnCollectionChanged(Object, NotifyCollectionChangedEventArgs) |
Eleva o CollectionChanged evento. (Herdado de CollectionView) |
| OnCurrentChanged() |
Eleva o CurrentChanged evento. (Herdado de CollectionView) |
| OnCurrentChanging() |
Levanta um CurrentChanging evento que não pode ser cancelado. (Herdado de CollectionView) |
| OnCurrentChanging(CurrentChangingEventArgs) |
Eleva o CurrentChanging evento com os argumentos especificados. (Herdado de CollectionView) |
| OnPropertyChanged(PropertyChangedEventArgs) |
Levanta o PropertyChanged evento usando os argumentos especificados. (Herdado de CollectionView) |
| PassesFilter(Object) |
Devolve um valor que indica se o item especificado pertence a esta visão. |
| ProcessCollectionChanged(NotifyCollectionChangedEventArgs) |
Quando é sobreposto numa classe derivada, processa uma única alteração no thread da interface. (Herdado de CollectionView) |
| ProcessPendingChanges() |
Assegura que todas as alterações pendentes à coleção foram comprometidas. (Herdado de CollectionView) |
| Refresh() |
Recria a vista. (Herdado de CollectionView) |
| RefreshOrDefer() |
Atualiza a vista ou especifica que esta precisa de ser atualizada quando o ciclo de adiamento terminar. (Herdado de CollectionView) |
| RefreshOverride() |
Recria a vista. (Herdado de CollectionView) |
| Remove(Object) |
Remove a referência de item especificada da coleção ou da vista. |
| RemoveAt(Int32) |
Remove o item no índice especificado da coleção ou visualização. |
| SetCurrent(Object, Int32, Int32) |
Define o item especificado e o índice como os valores das CurrentItem propriedades e.CurrentPosition Este método pode ser chamado a partir de um construtor de uma classe derivada. (Herdado de CollectionView) |
| SetCurrent(Object, Int32) |
Define o item especificado e o índice como os valores das CurrentItem propriedades e.CurrentPosition (Herdado de CollectionView) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| VerifyAccess() |
Faz cumprir que o thread que chama tem acesso a este DispatcherObject. (Herdado de DispatcherObject) |
evento
| Name | Description |
|---|---|
| CollectionChanged |
Ocorre quando a visão mudou. (Herdado de CollectionView) |
| CurrentChanged |
Ocorre depois de o CurrentItem ter mudado. (Herdado de CollectionView) |
| CurrentChanging |
Ocorre quando está CurrentItem a mudar. (Herdado de CollectionView) |
| PropertyChanged |
Ocorre quando o valor de uma propriedade mudou. (Herdado de CollectionView) |
Implementações de Interface Explícita
| Name | Description |
|---|---|
| ICollection.IsSynchronized |
Este membro suporta a infraestrutura Windows Presentation Foundation (WPF) e não foi concebido para ser usado diretamente a partir do seu código. |
| ICollection.SyncRoot |
Este membro suporta a infraestrutura Windows Presentation Foundation (WPF) e não foi concebido para ser usado diretamente a partir do seu código. |
| IEditableCollectionView.AddNew() |
Adiciona um novo item à coleção. |
| IEditableCollectionView.CanAddNew |
Recebe um valor que indica se um novo item pode ser adicionado à coleção. |
| IEditableCollectionView.CanCancelEdit |
Recebe um valor que indica se a vista de coleção pode descartar alterações pendentes e restaurar os valores originais de um objeto editado. |
| IEditableCollectionView.CancelEdit() |
Termina a transação de edição e, se possível, restaura o valor original do item. |
| IEditableCollectionView.CancelNew() |
Termina a transação de adicionar e descarta o novo item pendente. |
| IEditableCollectionView.CanRemove |
Recebe um valor que indica se um item pode ser removido da coleção. |
| IEditableCollectionView.CommitEdit() |
Termina a transação de edição e guarda as alterações pendentes. |
| IEditableCollectionView.CommitNew() |
Termina a transação de adicionar e guarda o novo item pendente. |
| IEditableCollectionView.CurrentAddItem |
Recebe o item que está a ser adicionado durante a transação atual de adição. |
| IEditableCollectionView.CurrentEditItem |
Recebe o item da coleção que está a ser editado. |
| IEditableCollectionView.EditItem(Object) |
Inicia uma transação de edição do item especificado. |
| IEditableCollectionView.IsAddingNew |
Recebe um valor que indica se uma transação de adição está em curso. |
| IEditableCollectionView.IsEditingItem |
Recebe um valor que indica se uma transação de edição está em curso. |
| IEditableCollectionView.NewItemPlaceholderPosition |
Obtém ou define a posição do novo item marcador na vista da coleção. |
| IEditableCollectionView.Remove(Object) |
Remove o item especificado da coleção. |
| IEditableCollectionView.RemoveAt(Int32) |
Remove o item na posição especificada da coleção. |
| IEditableCollectionViewAddNewItem.AddNewItem(Object) |
Adiciona o objeto especificado à coleção. |
| IEditableCollectionViewAddNewItem.CanAddNewItem |
Recebe um valor que indica se um objeto especificado pode ser adicionado à coleção. |
| IEnumerable.GetEnumerator() |
Devolve um IEnumerator objeto que podes usar para enumerar os itens na vista. (Herdado de CollectionView) |
| IItemProperties.ItemProperties |
Recebe uma coleção que contém informações sobre as propriedades disponíveis nos itens de uma coleção. |
| IList.IsFixedSize |
Este membro suporta a infraestrutura Windows Presentation Foundation (WPF) e não foi concebido para ser usado diretamente a partir do seu código. |
| IList.IsReadOnly |
Este membro suporta a infraestrutura Windows Presentation Foundation (WPF) e não foi concebido para ser usado diretamente a partir do seu código. |
| INotifyCollectionChanged.CollectionChanged |
Ocorre quando a visão mudou. (Herdado de CollectionView) |
| INotifyPropertyChanged.PropertyChanged |
Ocorre quando o valor de uma propriedade muda. (Herdado de CollectionView) |
| IWeakEventListener.ReceiveWeakEvent(Type, Object, EventArgs) |
Recebe eventos do gestor centralizado de eventos. |
Métodos da Extensão
| Name | Description |
|---|---|
| AsParallel(IEnumerable) |
Permite a paralelização de uma consulta. |
| AsQueryable(IEnumerable) |
Converte um IEnumerable para um IQueryable. |
| Cast<TResult>(IEnumerable) |
Conjura os elementos de an IEnumerable para o tipo especificado. |
| OfType<TResult>(IEnumerable) |
Filtra os elementos de um IEnumerable com base num tipo especificado. |