J'utilise VB.Net. J'ai un contrôle d'utilisateur de WPF appelé "NavigationPanel" que j'ai créé avec le concepteur. Par défaut, sa portée est Public. Quand je change sa portée à un ami dans le fichier NavigationPanel.xaml.vb, je reçois l'erreur suivante:Comment modifier l'étendue d'un contrôle utilisateur WPF créé par un concepteur de public à ami dans VB.Net?
Specified access 'Public' for 'NavigationPanel' does not match the access 'Friend' specified on one of its other partial types.
L'erreur s'applique à un fichier généré Designer appelle NavigationPanel.g.vb. Elle déclare NavigationPanel avec la ligne:
Partial Public Class NavigationPanel
Si je change manuellement « Public » à « ami » sur cette ligne, ou si je supprime le fichier, le concepteur conserve le recréer avec « Public », et d'élever l'erreur . Je n'arrive pas à comprendre pourquoi le Designer pense qu'il est approprié de déclarer la classe avec la portée "Public", et je n'arrive pas à comprendre comment convaincre le Designer d'utiliser "Friend" à la place.
Merci, Basarat Ali. La page que vous m'avez renvoyée contient la réponse (http://msdn.microsoft.com/fr-fr/library/ms754029.aspx). Cette réponse est: Pour modifier la portée d'un contrôle utilisateur à Friend, utilisez x: ClassModifier = "Friend" dans le fichier xaml. (En C#, l'équivalent est x: ClassModifier = "internal".) –