Partager via


x:ClassModifier, directive

Modifie le comportement de compilation XAML lorsqu’il x:Class est également fourni. Plus précisément, au lieu de créer un niveau d’accès partiel class (la valeur par défaut), l’élément fourni x:Class est créé avec un niveau d’accèsNotPublic.Public Ce comportement affecte le niveau d’accès de la classe dans les assemblys générés.

Utilisation d'attributs XAML

<object x:Class="namespace.classname" x:ClassModifier="NotPublic">
   ...
</object>

Valeurs XAML

Valeur Description
NotPublic La chaîne exacte à passer pour spécifier TypeAttributes.Public ou TypeAttributes.NotPublic varier selon le langage de programmation code-behind que vous utilisez. Consultez la section Notes.

Dépendances

x :Class doit également être fourni sur le même élément, et cet élément doit être l’élément racine d’une page. Pour plus d’informations, consultez [MS-XAML] Section 6.3.1.8.

Notes

La valeur de l’utilisation des x:ClassModifier services XAML .NET varie selon le langage de programmation. La chaîne à utiliser dépend de la façon dont chaque langue implémente son CodeDomProvider et le convertisseur de type qu’il retourne pour définir les significations pour TypeAttributes.Public et TypeAttributes.NotPublic, et si cette langue respecte la casse.

  • Pour C#, la chaîne à passer à désigner TypeAttributes.NotPublic est internal.

  • Pour Microsoft Visual Basic .NET, la chaîne à transmettre à désigner TypeAttributes.NotPublic est Friend.

  • Pour C++/CLI, aucune cible n’existe qui prend en charge la compilation xaml ; par conséquent, la valeur à passer n’est pas spécifiée.

Vous pouvez également spécifier TypeAttributes.Public (public en C#, Public en Visual Basic) ; toutefois, la spécification TypeAttributes.Public est rarement effectuée, car TypeAttributes.Public il s’agit déjà du comportement par défaut.

D’autres valeurs avec des restrictions de niveau d’accès au code utilisateur équivalentes, comme private en C#, ne sont pas pertinentes car x:ClassModifier les références de classe imbriquées ne sont pas prises en charge en XAML, et par conséquent, le TypeAttributes.NotPublic modificateur a le même effet.

Notes de sécurité

Le niveau d’accès tel qu’il est déclaré est x:ClassModifier toujours soumis à une interprétation par des infrastructures particulières et leurs fonctionnalités. WPF inclut des fonctionnalités permettant de charger et d’instancier des types x:ClassModifier où il s’agit internal, si cette classe est référencée à partir d’une ressource WPF via une référence d’URI pack. En conséquence de ce cas et potentiellement d’autres comme celui-ci implémenté par d’autres frameworks, ne s’appuient pas exclusivement sur x:ClassModifier le blocage de toutes les tentatives d’instanciation possibles.

Voir aussi