Freigeben über


Benutzerdefinierte Attribute in Visual Basic

Aktualisiert: November 2007

Benutzerdefinierte Attribute liefern zusätzliche Informationen zu Programmelementen. Sie können z. B. ein benutzerdefiniertes Sicherheitsattribut definieren, das die für den Aufrufer erforderlichen Berechtigungen zum Ausführen einer Prozedur angibt.

Benutzerdefinierte Attribute werden in Attributklassen definiert, die auf der System.Attribute-Klasse basieren. Die Attributklassen selbst verwenden ein Attribut mit der Bezeichnung AttributeUsageAttribute, um Informationen über die Verwendungsweise des Attributs bereitzustellen. Durch Inherited = True wird angegeben, dass ein Attribut auf abgeleitete Klassen übertragen werden kann. Indem Sie die AllowMultiple-Eigenschaft auf True festlegen, können Sie mehrere Instanzen des Attributs auf ein Programmelement anwenden. Mithilfe der AttributeTargets-Enumeration können Sie definieren, auf welche Programmelementtypen das Attribut angewendet werden kann.

Im folgenden Code wird durch das AttributeUsageAttribute-Attribut ein Attribut festgelegt, das auf beliebige Elementtypen angewendet, vererbt sowie genau einmal eingesetzt werden kann:

<AttributeUsage(AttributeTargets.All, Inherited:=True, AllowMultiple:=False)> _
Class TestAttribute1
    Inherits Attribute
End Class

Sie können den Or-Operator verwenden, um mehrere Elemente aus der AttributeTargets-Enumeration zu kombinieren, wie im folgenden Code dargestellt:

<AttributeUsage(AttributeTargets.Class Or AttributeTargets.Method)> _
Class TestAttribute2
    Inherits Attribute
End Class

In diesem Abschnitt

Verwandte Abschnitte