Partager via


XmlnsPrefixAttribute Classe

Définition

Identifie un préfixe recommandé à associer à un espace de noms XAML pour l’utilisation XAML, lors de l’écriture d’éléments et d’attributs dans un fichier XAML (sérialisation) ou lors de l’interaction avec un environnement de conception qui offre des fonctionnalités d’édition XAML.

public ref class XmlnsPrefixAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class XmlnsPrefixAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)>]
type XmlnsPrefixAttribute = class
    inherit Attribute
Public NotInheritable Class XmlnsPrefixAttribute
Inherits Attribute
Héritage
XmlnsPrefixAttribute
Attributs

Remarques

Les processeurs ou frameworks XAML qui incorporent XAML, ou tout processus qui effectue la sérialisation XAML, doivent généralement respecter le préfixe recommandé. Le préfixe peut être nécessaire dans tous les cas où les préfixes provenant de mappages spécifiques dans la source XAML d’origine ne sont pas conservés dans le graphe d’objets d’exécution ou stockés par une infrastructure ou une technologie. Une infrastructure peut avoir des préférences spécifiques pour la sérialisation de ses propres types qui ignorent le préfixe recommandé à partir de ses propres assemblys ; Cela peut être effectué pour promouvoir de manière cohérente un espace de noms XAML par défaut. Toutefois, une telle infrastructure doit toujours fournir des préfixes recommandés pour les utilisations possibles d’outils tiers de ses types XAML. Consultez la section « Meilleures pratiques pour la prise en charge des Designer XAML ou la sérialisation générale » ci-dessous.

Une recommandation générale pour les préfixes est d’utiliser des chaînes courtes, car le préfixe est généralement appliqué à tous les éléments sérialisés qui proviennent de l’espace de noms XAML. La longueur de la chaîne de préfixe peut avoir un effet notable sur la taille de la sortie XAML sérialisée.

Si un préfixe demandé est déjà utilisé par un autre identificateur d’espace de noms XAML précédemment rencontré/sérialisé, le comportement n’est pas spécifié (le comportement appartient à chaque implémentation de processeur XAML individuelle).

Dans la plupart des cas, vous appliquez XmlnsPrefixAttribute uniquement si vous avez également appliqué au moins un dans l’assembly XmlnsDefinitionAttribute pour ce même espace de noms XAML.

Dans les versions précédentes du .NET Framework, cette classe existait dans l’assembly WindowsBase spécifique à WPF. Dans .NET Framework 4, XmlnsPrefixAttribute se trouve dans l’assembly System.Xaml. Pour plus d'informations, consultez Types Migrated from WPF to System.Xaml.

Meilleure pratique pour la prise en charge des Designer XAML ou la sérialisation générale

Même si vous envisagez que l’espace de noms XAML associé soit l’espace de noms XAML par défaut dans la plupart des cas d’utilisation de votre infrastructure ou bibliothèque, vous devez quand même spécifier une chaîne non vide comme préfixe recommandé pour un espace de noms XAML. Les informations d’espace de noms XAML par défaut sont transmises dans des fichiers XAML individuels et des flux de nœuds XAML. L’espace de noms XAML par défaut et la façon dont il est défini dans une source XAML donnée peuvent facilement être perpétués pour la sérialisation par cas sans utiliser XmlnsPrefixAttribute. Toutefois, le XmlnsPrefixAttribute est utile dans les cas où l’auteur XAML a choisi de mapper l’espace de noms XAML par défaut à autre chose. Dans ce scénario, un éditeur de texte XAML incorporé dans un environnement de conception peut utiliser XmlnsPrefixAttribute comme indicateur pour un mappage d’espace de noms xmlns XAML initial. Ou un environnement de conception peut ajouter des mappages juste-à-temps au code XAML de stockage pour des métaphores de conception telles que faire glisser des objets hors d’une boîte à outils et dans une aire de conception visuelle. En outre, il est concevable qu’un concepteur puisse prendre en charge simultanément plusieurs frameworks prenant en charge XAML et qu’il dispose d’un sérialiseur XAML commun qui s’appuie sur les services XAML .NET Framework plutôt que sur la sérialisation spécifique à l’infrastructure. La spécification d’un pour ces scénarios permet de XmlnsPrefixAttribute rendre l’utilisation DU XAML pour vos types plus portable et robuste si le XAML est échangé entre les outils de conception ou subit un aller-retour entre les éditeurs XAML et d’autres consommateurs tels que les compilateurs de balisage ou d’autres sérialisations.

Constructeurs

XmlnsPrefixAttribute(String, String)

Initialise une nouvelle instance de la classe XmlnsPrefixAttribute.

Propriétés

Prefix

Obtient le préfixe recommandé associé à cet attribut.

TypeId

Lors de l'implémentation dans une classe dérivée, obtient un identificateur unique pour l'objet Attribute.

(Hérité de Attribute)
XmlNamespace

Obtient l’identificateur d’espace de noms XAML associé à cet attribut.

Méthodes

Equals(Object)

Retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
GetHashCode()

Retourne le code de hachage de cette instance.

(Hérité de Attribute)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée.

(Hérité de Attribute)
Match(Object)

En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

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

(Hérité de Object)

Implémentations d’interfaces explicites

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch.

(Hérité de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface.

(Hérité de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1).

(Hérité de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fournit l'accès aux propriétés et aux méthodes exposées par un objet.

(Hérité de Attribute)

S’applique à

Voir aussi