Compartilhar via


IXamlType Interface

Definição

Fornece os meios para relatar as especificações do sistema do tipo XAML sobre tipos XAML. Usando esse contrato de interface, os analisadores XAML podem carregar todos os tipos e membros personalizados definidos em seu aplicativo e são referenciados em arquivos XAML.

public interface class IXamlType
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(2032200369, 41701, 18330, 189, 80, 108, 239, 60, 11, 73, 112)]
struct IXamlType
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Guid(2032200369, 41701, 18330, 189, 80, 108, 239, 60, 11, 73, 112)]
public interface IXamlType
Public Interface IXamlType
Derivado
Atributos

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Comentários

O Windows Runtime é uma API baseada em COM (Component Object Model) nativa. Você pode usar vários idiomas para escrever o código do aplicativo, incluindo idiomas do Microsoft .NET e C++nativo. O Windows Runtime não inclui reflexão ou um sistema de tipos no estilo CLR. Na ausência desse tipo de sistema, a estrutura XAML para o Windows Runtime precisa de infraestrutura e contratos para reconhecer e carregar todos os tipos personalizados definidos em seu aplicativo e que são referenciados em arquivos XAML. As interfaces IXamlMember e IXamlType são o contrato. A infraestrutura é parcialmente visível como um arquivo de código gerado XamlTypeInfo.* (o restante do nome do arquivo varia dependendo de qual idioma você usa). Esse arquivo contém uma classe parcial que estende a classe Application e implementa a interface IXamlMetadataProvider . A estrutura XAML do Windows Runtime usa essa interface para consultar os detalhes dos tipos referenciados em arquivos XAML. Outros arquivos gerados também usam IXamlMetadataProvider para descoberta.

Observação

XamlTypeInfo.* pode ser encontrado na pasta obj junto com outros arquivos gerados. Talvez seja necessário habilitar Mostrar todos os arquivos para vê-lo. Além disso, se você quiser entrar no código de definição de tipo, desabilite o recurso Apenas meu código nas opções do depurador.

Propriedades

BaseType

Obtém o IXamlType para o tipo base imediato do tipo XAML. A determinação desse valor baseia-se no tipo subjacente para tipos de núcleo.

ContentProperty

Obtém as informações de IXamlMember para a propriedade de conteúdo XAML deste IXamlType.

FullName

Obtém o nome completo da classe do tipo subjacente.

IsArray

Obtém um valor que indica se o IXamlType representa uma matriz.

IsBindable

Obtém um valor que declara se o tipo é associável.

IsCollection

Obtém um valor que indica se esse IXamlType representa uma coleção.

IsConstructible

Obtém um valor que indica se esse IXamlType representa um tipo construível, de acordo com a definição XAML.

IsDictionary

Obtém um valor que indica se esse IXamlType representa um dicionário/mapa.

IsMarkupExtension

Obtém um valor que indica se o IXamlType representa uma extensão de marcação.

ItemType

Obtém um valor que fornece as informações de tipo para a propriedade Items deste IXamlType.

KeyType

Obtém um valor que fornece as informações de tipo para a propriedade Key desse IXamlType, se esse IXamlType representar um dicionário/mapa.

UnderlyingType

Obtém informações para o tipo de suporte.

Métodos

ActivateInstance()

Dado um tipo XAML, define seus valores para inicialização e retorna uma instância utilizável.

AddToMap(Object, Object, Object)

Adiciona um item a um tipo de mapa personalizado.

AddToVector(Object, Object)

Adiciona um item a um tipo de vetor personalizado.

CreateFromString(String)

Cria uma representação do sistema de tipo com base em uma cadeia de caracteres. O cenário main para esse uso é criar um valor de enumeração e mapear a enumeração apropriada.

GetMember(String)

Retorna as informações de IXamlMember para um membro nomeado específico deste IXamlType.

RunInitializer()

Invoca qualquer lógica de pré-ativação necessária conforme exigido pelo contexto do esquema XAML e suas dependências de plataforma.

Aplica-se a

Confira também