Comment : fournir des descriptions de métadonnées relatives à votre composant

Vous pouvez fournir des métadonnées descriptives concernant votre composant en vous servant des attributes. Les attributs sont des classes spécialisées qui s'appliquent aux éléments du code. Au moment de la compilation, ils sont émis vers des métadonnées mises à la disposition du Common Language Runtime ou d'outils et d'applications personnalisés par le biais de l'espace de noms System.Reflection.

Pour attacher un attribut à un composant, faites précéder celui-ci d'une référence à l'attribut et fournissez les paramètres ou les indicateurs appropriés. Cet appel au constructeur est placé entre crochets pointus <> en Visual Basic et entre crochets droits [] en C#.

Par convention, toutes les classes d'attribut se terminent par « Attribute ». Par exemple, il y a les classes DescriptionAttribute, ObsoleteAttribute et BrowsableAttribute. Toutefois, plusieurs langages ciblant le Common Language Runtime, notamment Visual Basic et C#, n'exigent pas le nom complet de l'attribut. Par exemple, ObsoleteAttribute peut apparaître dans le code sous la forme Obsolete.

Pour attacher un attribut existant à votre composant

  1. Déterminez les attributs nécessaires à votre composant.

  2. Attachez ces attributs à votre composant. Notez que vous devez soit utiliser le nom complet de l'attribut soit ajouter l'instruction Imports (using) appropriée. L'exemple suivant montre comment attacher l'attribut DescriptionAttribute :

    Imports System.ComponentModel
    <Description("This is a description string")> Public Class TheClass
    End Class
    
    using System.ComponentModel;
    [Description("This is a description string")]
    public class TheClass
    {
    }
    

Attributs personnalisés

Vous pouvez également créer vos propres attributs à utiliser avec vos propres outils ou applications personnalisés en héritant de Attribute. Vous pouvez ajouter à cette classe de base toute propriété ou méthode personnalisée nécessaire à votre application.

Pour créer et appliquer un attribut personnalisé

  1. Créez une classe qui hérite de Attribute.

    Public Class WidgetAttribute
       Inherits System.Attribute
    End Class
    
    public class WidgetAttribute: System.Attribute
    {
    }
    
  2. Déterminez les propriétés et méthodes dont votre attribut a besoin et écrivez pour eux du code. L'exemple suivant vous montre comment créer une propriété WidgetType qui est définie dans le constructeur de la classe WidgetAttribute. L'attributAttributeUsageAttribute désigne les membres de code que l'attribut peut cibler.

    <AttributeUsage(System.AttributeTargets.Class)> Public Class _
       WidgetAttribute
       Inherits System.Attribute
       Private mWidgetType as WidgetTypeEnum
       ' Creates a readonly property for the WidgetAttribute class.
       Public ReadOnly Property WidgetType as WidgetTypeEnum
          Get
             Return mWidgetType
          End Get
       End Property
       ' Creates a constructor that accepts a parameter and assigns the 
       ' value of that parameter to the WidgetType property.
       Public Sub New(type as WidgetTypeEnum)
          MyBase.New()
          mWidgetType = type
       End Sub
    End Class
    
    [AttributeUsage(System.AttributeTargets.Class)]
    public class WidgetAttribute: System.Attribute
    {
       private WidgetTypeEnum widgetType;
    
       // Creates a readonly property for the WidgetAttribute class.
       public WidgetTypeEnum WidgetType
          {
             get {return widgetType;}
          }
    
       public WidgetAttribute(WidgetTypeEnum type): base()
          {
             widgetType = type;
          }
    }
    
  3. Appliquez cet attribut comme n'importe quel autre attribut, en veillant à appliquer tous les paramètres nécessaires.

    <WidgetAttribute(WidgetTypeEnum.VerticalWidget)> _
       Public Class WidgetFortyFive
    End Class
    
    [WidgetAttribute(WidgetTypeEnum.VerticalWidget)]
    public class WidgetFortyFive
    {
    }
    

Voir aussi

Tâches

Comment : fournir des métadonnées pour les propriétés, les méthodes et les événements

Référence

Attribute

Concepts

Accès aux attributs personnalisés

Récupération des informations stockées dans les attributs

Autres ressources

Assistance utilisateur pour les composants