Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês
Esta documentação foi arquivada e não está sendo atualizada.

Classe CompositeCollection

Permite que várias coleções e os itens a serem exibidos como uma única lista.

System.Object
  System.Windows.Data.CompositeCollection

Namespace:  System.Windows.Data
Assembly:  PresentationFramework (em PresentationFramework.dll)
XMLNS para XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[LocalizabilityAttribute(LocalizationCategory.Ignore)]
public class CompositeCollection : IList, 
	ICollection, IEnumerable, INotifyCollectionChanged, ICollectionViewFactory, IWeakEventListener
<CompositeCollection .../>

O tipo CompositeCollection expõe os membros a seguir.

  NomeDescrição
Método públicoCompositeCollection()Cria uma nova instância de CompositeCollection classe que está vazia e tem capacidade inicial padrão.
Método públicoCompositeCollection(Int32)Cria uma nova instância de CompositeCollection classe que está vazia e tem uma capacidade inicial especificado.
Início

  NomeDescrição
Propriedade públicaCountObtém o número de itens armazenados nesta coleção.
Propriedade públicaItemPropriedade do indexador que recupera ou substitui o item no deslocamento de base zero determinado na coleção.
Início

  NomeDescrição
Método públicoAddAdiciona o item especificado para esta coleção.
Método públicoClearLimpa a coleção.
Método públicoContainsVerifica se um determinado item está nesta coleção.
Método públicoCopyToFaz uma cópia superficial de referências de objeto deste conjunto para determinado array.
Método públicoEquals(Object) Determina se o Object especificado é igual ao Object atual. (Herdado de Object.)
Método protegidoFinalize Permite que um objeto tente liberar recursos e executar outras operações de limpeza antes que ele seja recuperado pela coleta de lixo. (Herdado de Object.)
Método públicoGetHashCodeServe como uma função hash para um tipo específico. (Herdado de Object.)
Método públicoGetType Obtém o Type da instância atual. (Herdado de Object.)
Método públicoIndexOfRetorna o índice nesta coleção onde determinado item é encontrado.
Método públicoInsertInsere um item na coleção de um determinado índice. Todos os itens após a posição fornecida são movidos para baixo por um.
Método protegidoMemberwiseCloneCria uma cópia superficial do Object atual. (Herdado de Object.)
Método protegidoReceiveWeakEventManipula eventos da tabela de eventos centralizado.
Método públicoRemoveRemove a referência de determinado item da coleção. Todos os itens restantes se mover para cima por um.
Método públicoRemoveAtRemove um item da coleção no índice fornecido. Todos os itens restantes se mover para cima por um.
Método públicoToStringRetorna uma string que representa o objeto atual. (Herdado de Object.)
Início

  NomeDescrição
Evento protegidoCollectionChangedOccurs when the collection changes, either by adding or removing an item.
Início

  NomeDescrição
Método de extensão públicoAsParallel Permite a paralelização de uma consulta. (Definido por ParallelEnumerable.)
Método de extensão públicoAsQueryable Converte um IEnumerable para um IQueryable. (Definido por Queryable.)
Método de extensão públicoCast<TResult>Converte os elementos de um IEnumerable para o tipo especificado. (Definido por Enumerable.)
Método de extensão públicoOfType<TResult> Filtra os elementos de um IEnumerable com base em um tipo especificado. (Definido por Enumerable.)
Início

  NomeDescrição
Implementação explícita da interfacePropriedade particularICollection.IsSynchronizedEste membro dá suporte a Windows Presentation Foundation (WPF) infra-estrutura e não se destina a ser usado diretamente em seu código.
Implementação explícita da interfacePropriedade particularICollection.SyncRootEste membro dá suporte a Windows Presentation Foundation (WPF) infra-estrutura e não se destina a ser usado diretamente em seu código.
Implementação explícita da interfaceMétodo particularICollectionViewFactory.CreateViewEste membro dá suporte a Windows Presentation Foundation (WPF) infra-estrutura e não se destina a ser usado diretamente em seu código.
Implementação explícita da interfaceMétodo particularIEnumerable.GetEnumeratorRetorna um enumerador.
Implementação explícita da interfacePropriedade particularIList.IsFixedSizeEste membro dá suporte a Windows Presentation Foundation (WPF) infra-estrutura e não se destina a ser usado diretamente em seu código.
Implementação explícita da interfacePropriedade particularIList.IsReadOnlyEste membro dá suporte a Windows Presentation Foundation (WPF) infra-estrutura e não se destina a ser usado diretamente em seu código.
Implementação explícita da interfaceEvento particularINotifyCollectionChanged.CollectionChangedOcorre quando a coleção foi alterada.
Implementação explícita da interfaceMétodo particularIWeakEventListener.ReceiveWeakEventEste membro dá suporte a Windows Presentation Foundation (WPF) infra-estrutura e não se destina a ser usado diretamente em seu código.
Início

CompositeCollection pode conter itens como, por exemplo, seqüências de caracteres, objetos, XML nós, elementos, bem como outras coleções. Um ItemsControl usa os dados de CompositeCollection para gerar o seu conteúdo de acordo com sua ItemTemplate. Para obter mais informações sobre como usar o ItemsControl objetos para vincular a coleções, consulte a ligação para a seção coleções de Revisão de Associação de Dados.

The following example shows how to display multiple collections and items as one list using the CompositeCollection class. In this example, GreekGods is an ObservableCollection<T> of GreekGod custom objects. Data templates are defined so that GreekGod objects and GreekHero objects appear with a gold and a cyan foreground color respectively.


<Window Background="Cornsilk"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  xmlns:c="clr-namespace:SDKSample"
  x:Class="SDKSample.Window1"
  Title="CompositeCollections"
  SizeToContent="WidthAndHeight"
  >
  <Window.Resources>
    <c:GreekGods x:Key="GreekGodsData"/>

    <XmlDataProvider x:Key="GreekHeroesData" XPath="GreekHeroes/Hero">
      <x:XData>
      <GreekHeroes xmlns="">
        <Hero Name="Jason" />
        <Hero Name="Hercules" />
        <Hero Name="Bellerophon" />
        <Hero Name="Theseus" />
        <Hero Name="Odysseus" />
        <Hero Name="Perseus" />
      </GreekHeroes>
      </x:XData>
    </XmlDataProvider>

    <DataTemplate DataType="{x:Type c:GreekGod}">
      <TextBlock Text="{Binding Path=Name}" Foreground="Gold"/>
    </DataTemplate>
    <DataTemplate DataType="Hero">
      <TextBlock Text="{Binding XPath=@Name}" Foreground="Cyan"/>
    </DataTemplate>
	</Window.Resources>
	
  <StackPanel>
    <TextBlock FontSize="18" FontWeight="Bold" Margin="10"
      HorizontalAlignment="Center">Composite Collections Sample</TextBlock>
    <ListBox Name="myListBox" Height="300" Width="200" Background="White">
      <ListBox.ItemsSource>
        <CompositeCollection>
          <CollectionContainer
            Collection="{Binding Source={StaticResource GreekGodsData}}" />
          <CollectionContainer
            Collection="{Binding Source={StaticResource GreekHeroesData}}" />
          <ListBoxItem Foreground="Red">Other Listbox Item 1</ListBoxItem>
          <ListBoxItem Foreground="Red">Other Listbox Item 2</ListBoxItem>
        </CompositeCollection>
      </ListBox.ItemsSource>
    </ListBox>
  </StackPanel>

</Window>


.NET Framework

Com suporte em: 4, 3.5, 3.0

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Windows 7, Windows Vista SP1 ou posterior, Windows XP SP3, Windows Server 2008 (Server Core não compatível), Windows Server 2008 R2 (Server Core não compatível com SP1 ou posterior), Windows Server 2003 SP2

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos de sistema do .NET Framework.

Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.
Mostrar: