XamlSchemaContext Classe

Définition

Définit un contexte réutilisable pour interpréter ou mapper des types XAML et les types dans les assemblys qui les sous-tendent.

public ref class XamlSchemaContext
public class XamlSchemaContext
type XamlSchemaContext = class
Public Class XamlSchemaContext
Héritage
XamlSchemaContext

Remarques

Un contexte de schéma XAML fournit une couche d’abstraction entre un schéma ou un vocabulaire pour XAML et une implémentation d’analyseur spécifique. En insérant le concept d’un contexte de schéma, le schéma peut être utilisé avec différents analyseurs XAML, et le contexte de schéma remplit les détails nécessaires pour interagir avec un analyseur XAML spécifique. Par exemple, le contexte de schéma XAML fournit des API de requête qui sont liées aux concepts XAML ou à la liaison CLR au système de type XAML. Le contexte de schéma XAML est également responsable de la maintenance de la liste d’assemblys chargés, qui définit l’emplacement où un analyseur XAML recherche des types de stockage.

Notes pour les héritiers

Dans un AppDomain, un XamlSchemaContext peut être partagé entre plusieurs appelants, qui incluent à la fois des appelants d’approbation complète et partielle. Cette situation existe dans des frameworks tels que WPF, qui fournissent un accès de confiance partielle au chargement XAML pour les parties du modèle d’application WPF. L’implémentation par défaut XamlSchemaContext fournit des protections dans ce scénario en conservant toutes ses propriétés et paramètres immuables. Les implémentations dérivées doivent également envisager de suivre ce modèle d’immuabilité pour les propriétés et les paramètres d’un contexte de schéma XAML.

La XamlSchemaContext classe de base est conçue pour que les recherches n’aient pas d’effets secondaires observables en externe. Les types référencés par XamlSchemaContext les API de la classe de base, tels que XamlType ou XamlMember, ne produisent pas d’effets secondaires à partir de recherches. Toutes les données nécessaires à la détermination d’un schéma doivent être disponibles à partir de la construction et des paramètres du AppDomain. Notez qu’aucune API de recherche ne s’appuie sur des services transmis explicitement ; leur entrée s’appuie uniquement sur l’entrée de chaîne.

La XamlSchemaContext classe de base et XamlTypeXamlMember toutes les threads sont sécurisées dans leurs implémentations de base. Si vous dérivez ou dérivez des XamlSchemaContext classes système de type XAML telles que XamlType et XamlMember , vous pouvez choisir si vos classes se comportent comme thread safe.

Constructeurs

Nom Description
XamlSchemaContext()

Initialise une nouvelle instance de la classe XamlSchemaContext.

XamlSchemaContext(IEnumerable<Assembly>, XamlSchemaContextSettings)

Initialise une nouvelle instance de la XamlSchemaContext classe, en fonction d’un ensemble d’assemblys de référence et d’un objet de paramètres.

XamlSchemaContext(IEnumerable<Assembly>)

Initialise une nouvelle instance de la XamlSchemaContext classe, en fonction d’un ensemble d’assemblys de référence.

XamlSchemaContext(XamlSchemaContextSettings)

Initialise une nouvelle instance de la XamlSchemaContext classe, en fonction d’un objet de paramètres.

Propriétés

Nom Description
FullyQualifyAssemblyNamesInClrNamespaces

Obtient une valeur qui spécifie si un schéma XAML et son contexte utilisent des noms d’assembly complets dans les valeurs retournées par l’API de recherche.

ReferenceAssemblies

Obtient un ensemble énumérable d’assemblys de référence pour le contexte de schéma XAML.

SupportMarkupExtensionsWithDuplicateArity

Obtient une valeur qui spécifie si un schéma XAML et son contexte prennent en charge les extensions de balisage qui ont deux constructeurs avec la même arité (nombre de paramètres d’entrée).

Méthodes

Nom Description
Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
Finalize()

Fournit une implémentation non standard Finalize qui n’appelle Disposepas .

GetAllXamlNamespaces()

Recherche les assemblys détenus par ce XamlSchemaContext paramètre et retourne un ensemble d’espaces de noms.

GetAllXamlTypes(String)

Recherche les assemblys qui sont conservés par cela XamlSchemaContext et retourne un ensemble de types à partir de l’espace de noms XAML spécifié.

GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetPreferredPrefix(String)

Obtient une chaîne qui est signalée comme préfixe préféré pour les consommateurs à utiliser lorsqu’ils mappent l’espace de noms XAML spécifié.

GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
GetValueConverter<TConverterBase>(Type, XamlType)

Retourne un convertisseur de valeur qui peut être converti en valeur demandée targetType.

GetXamlDirective(String, String)

Retourne une valeur qui représente une XamlDirective directive, soit pour le langage XAML, soit pour une implémentation particulière.

GetXamlType(String, String, XamlType[])

Retourne une XamlType valeur basée sur un espace de noms XAML et une chaîne pour le nom de type. Cette signature peut spécifier les arguments de type pour les cas où le type souhaité est un type générique.

GetXamlType(Type)

Retourne une XamlType valeur basée sur un identificateur de type CLR.

GetXamlType(XamlTypeName)

Retourne une XamlType valeur basée sur un nom de type système XAML.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
OnAssemblyResolve(String)

Appelée lorsque les opérations utilisent ce contexte de schéma pour résoudre un assembly requis pour résoudre les espaces de noms XAML qu’il contient.

ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)
TryGetCompatibleXamlNamespace(String, String)

Retourne la réussite ou l’échec d’une requête pour un espace de noms XAML compatible. Une requête réussie signale que l’espace de noms XAML est un paramètre out.

S’applique à