Partager via


IXamlNameResolver Interface

Définition

Décrit un service qui peut retourner des objets spécifiés par leur nom XAML, ou retourne un jeton qui reporte la résolution de noms. Le service peut également retourner un jeu énumérable de tous les objets nommés figurant dans la portée de nom XAML.

public interface class IXamlNameResolver
public interface IXamlNameResolver
type IXamlNameResolver = interface
Public Interface IXamlNameResolver

Remarques

Cette interface n’est pas destinée à l’implémentation externe de scénarios XAML classiques, car il s’agit d’un service. Ce service permet aux extensions de balisage et aux convertisseurs de types de résoudre les noms XAML en d’autres objets de la même source XAML alors qu’ils sont toujours dans une représentation de nœud XAML. Le service peut être utilisé pour résoudre les références avant pour tout mécanisme qui s’appuie sur des noms XAML pour l’accès non linéaire à la production XAML environnante. Pour plus d’informations, consultez Convertisseurs de types et extensions de balisage pour XAML.

Les convertisseurs de types et les extensions de balisage peuvent interroger IXamlNameResolver en tant que service sur le contexte de service fourni par un enregistreur d’objets XAML, lorsque l’enregistreur d’objets XAML appelle le comportement de conversion de valeur. Pour plus d’informations, consultez convertisseurs de types et extensions de balisage pour les contextes XAML et de service disponibles pour les convertisseurs de types et les extensions de balisage.

Ce service expose une API qui peut différer la résolution de noms. La métaphore implémentée par le service est que les noms qui ne peuvent pas être résolus dans un premier passage par rapport à un graphique de nom-objet partiel doivent être stockés et utilisés pour créer le jeton de correction. Dans le comportement par défaut, tous ces noms sont envoyés pour une autre tentative de résolution lors d’une deuxième passe. Lors de la deuxième passe, le graphique de nom-objet global est terminé, et tous les jetons de correction sont en mesure de résoudre.

Notes

Même si elles sont autorisées par une implémentation particulière, les références anticipées en XAML ont inévitablement des conséquences sur les performances. Comme meilleure pratique pour le xaml de qualité de production, évitez les références avant chaque fois que cela est possible.

Propriétés

IsFixupTokenAvailable

Obtient une valeur qui détermine si l'appel de GetFixupToken(IEnumerable<String>, Boolean) est disponible pour résoudre un nom dans un jeton pour la résolution vers l'avant.

Méthodes

GetAllNamesAndValuesInScope()

Retourne un jeu énumérable de tous les objets nommés figurant dans la portée de nom XAML.

GetFixupToken(IEnumerable<String>)

Retourne un objet qui peut être correct pour certains modèles de balisage qui produisent des références vers l'avant.

GetFixupToken(IEnumerable<String>, Boolean)

Retourne un objet qui peut être correct pour certains modèles de balisage qui produisent des références vers l'avant.

Resolve(String)

Résout un objet à partir d'une référence de nom.

Resolve(String, Boolean)

Résout un objet à partir d'une référence de nom et fournit une valeur de suivi qui signale si l'objet est entièrement initialisé pour le graphique d'objet.

Événements

OnNameScopeInitializationComplete

Se produit lorsqu'un processeur XAML a inscrit tous les noms pertinents dans la portée de nom XAML de stockage.

S’applique à

Voir aussi