Postupy: Poskytování popisů metadat o vaší komponentě
Můžete poskytnout popisná metadata o komponenty prostřednictvím attributes .Atributy jsou specializované třídy, které jsou použity prvky kódu.V době kompilace atributy jsou emitovány do metadat, která je k dispozici společného jazykového modulu runtime nebo vlastní nástroje a aplikace prostřednictvím System.Reflection oboru názvů.
Atributy jsou připojeny k součásti předcházejících komponenty s odkazem na atribut a poskytnutím příslušné parametry nebo příznaky.Volání konstruktoru je umístěn v lomených závorkách < > v jazyce Visual Basic a pravidelné hranaté závorky [] v jazyce C#.
Dle úmluvy končí všech tříd atribut "Atribut" Například existují DescriptionAttribute, ObsoleteAttribute, a BrowsableAttribute třídy.Několik jazyků, které modul common language runtime, včetně jazyka Visual Basic a C#, nevyžadují úplný název atributu.Například ObsoleteAttribute mohou být uvedené v kódu jako Obsolete .
Připojit k komponenty existující atribut
Určete, které atributy jsou vyžadované pro komponenty.
Atributy připojte ke komponentě.Poznámka: musíte buď použít úplný název atributu nebo přidat příslušnou Imports (using) prohlášení.Následující příklad ukazuje, jak připojit DescriptionAttribute atribut:
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 { }
Vlastní atributy
Můžete také vytvořit vlastní atributy pro použití vlastní nástroje nebo aplikacemi ze Attribute.K této základní třídy můžete přidat všechny vlastní vlastnosti nebo metody, které aplikace potřebuje.
Vytvoření a použití vlastního atributu
Vytvořit třídu, která dědí z Attribute.
Public Class WidgetAttribute Inherits System.Attribute End Class
public class WidgetAttribute: System.Attribute { }
Zjistěte, které vlastnosti a metody, které potřebuje atribut a psát kód pro ně.Následující příklad ukazuje, jak vytvořit WidgetType vlastnost, která je nastavena v konstruktoru WidgetAttribute třídy.AttributeUsageAttribute Jaký kód členů můžete směrovat atribut nastaví atribut.
<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; } }
Tento atribut použije jako jiný atribut jisté použít všechny potřebné parametry.
<WidgetAttribute(WidgetTypeEnum.VerticalWidget)> _ Public Class WidgetFortyFive End Class
[WidgetAttribute(WidgetTypeEnum.VerticalWidget)] public class WidgetFortyFive { }
Viz také
Úkoly
Postupy: Poskytování metadat pro vlastnosti, metody a události komponent
Referenční dokumentace
Koncepty
Načítání informací uložených v atributech