Windows.Foundation.Collections Namespace

Define objetos de coleção padrão, especializados e genéricos. Isso inclui o IIterableT, IVectorT e IMapK,V interfaces genéricas, que são usadas como o padrão para suporte básico à coleção em toda a API do Windows Runtime.

Classes

PropertySet

Representa um conjunto de propriedades, que é um conjunto de objetos PropertyValue com chaves de cadeia de caracteres.

StringMap

Uma coleção associativa, também conhecida como mapa ou dicionário.

ValueSet

Implementa um mapa com chaves do tipo String e valores do tipo Object. O objeto deve ser um ou ValueSet do do WinRT. Como um PropertyValue, pode ser qualquer tipo, exceto PropertyTypeInspectableArray. Essa limitação existe para garantir que o valor possa ser serializado; passado por valor em um limite de processo.

Nota

Alguns membros só estão disponíveis para o idioma especificado.

Interfaces

IIterable<T>

Expõe um iterador que dá suporte à iteração simples em uma coleção de um tipo especificado.

.NET Essa interface aparece como System.Collections.Generic.IEnumerable<T>. Em qualquer caso em que um tipo do Windows Runtime implementou o IIterable<T>, o código .NET pode usar as APIs de <T>. O código C# pode usar foreach, o código do Visual Basic pode usar For Each... Próximo. Todos os métodos de extensão do .NET baseados em IEnumerable<T> e incluídos no .NET para aplicativos UWP são acessíveis (incluindo as extensões System.Linq, desde que você tenha incluído o namespace).

IIterator<T>

Dá suporte a iteração simples em uma coleção.

IKeyValuePair<K,V>

Representa um par chave-valor. Normalmente, isso é usado como um tipo de restrição quando você precisa encapsular dois parâmetros de tipo em um para atender às restrições de outra interface genérica.

.NET Essa interface aparece como System.Collections.Generic.KeyValuePair<TKey, TValue> (uma estrutura, não uma interface). Em qualquer caso em que um tipo do Windows Runtime implementou o código IKeyValuePair<K,V>, .NET pode usar as APIs de KeyValuePair.

IMap<K,V>

Representa uma coleção associativa, também conhecida como mapa ou dicionário.

.NET Essa interface aparece no código .NET como System.Collections.Generic.IDictionary<TKey, TValue> devido à projeção de linguagem .NET. Em qualquer caso em que um tipo do Windows Runtime implementou O código IMap<K,V>, .NET pode usar as APIs de IDictionary<TKey, TValue> em vez disso.

IMapChangedEventArgs<K>

Fornece dados para o evento alterado de uma coleção de mapas.

IMapView<K,V>

Representa uma exibição imutável em um mapa.

.NET Essa interface aparece como System.Collections.Generic.IReadOnlyDictionary<TKey, TValue> devido à projeção de linguagem .NET. Em qualquer caso em que um tipo de Tempo de Execução do Windows implementou o código IMapView<K,V>, .NET pode usar as APIs de IReadOnlyDictionary<TKey, TValue>.

IObservableMap<K,V>

Notifica os ouvintes de alterações dinâmicas em um mapa, como quando os itens são adicionados ou removidos.

IObservableVector<T>

Notifica os ouvintes de alterações no vetor.

IPropertySet

Representa uma coleção de pares chave-valor, correlacionando várias outras interfaces de coleção.

IVector<T>

Representa uma coleção de elementos de acesso aleatório.

.NET Essa interface aparece no código .NET como > System.Collections.Generic.IList<T devido à projeção de linguagem .NET. Em qualquer caso em que um tipo do Windows Runtime implementou o IVector<T>, o código .NET pode usar as APIs de IList<T> em vez disso.

IVectorChangedEventArgs

Fornece dados para o evento alterado de um vetor.

IVectorView<T>

Representa uma exibição imutável em um vetor.

.NET Essa interface aparece no código .NET como System.Collections.Generic.IReadOnlyList<T> devido à projeção de linguagem .NET. Em qualquer caso em que um tipo do Windows Runtime implementou o IVectorViewT, o código .NET pode usar as APIs de T.

Enumerações

CollectionChange

Descreve a ação que causa uma alteração em uma coleção.

Delegados

MapChangedEventHandler<K,V>

Representa o método que manipula o evento alterado de um mapa observável.

VectorChangedEventHandler<T>

Representa o método que manipula o evento alterado de um vetor observável.

Comentários

Muitas das interfaces e objetos definidos nesse namespace têm equivalentes de idioma diferentes, dependendo da linguagem de programação que você está usando. Para obter mais informações sobre como usar essas interfaces do código C++, consulte Collections (C++/CX). Para obter mais informações sobre como usar tipos de coleção do código .NET, consulte as Observações nos tipos específicos definidos nesse namespace.

Confira também