Como: Fornecer descrições dos metadados sobre o componente
Você pode fornecer metadados descritivos sobre o componente COM attributes.Os atributos são classes especializadas que são aplicadas a elementos de código.Em tempo de compilação, os atributos são emitidas em metadados que está disponível para o common language runtime ou ferramentas personalizadas e a aplicativos com o namespace de System.Reflection .
Os atributos são anexados a um componente precedendo o componente com uma referência ao atributo e fornecendo quaisquer parâmetros ou sinalizadores relevantes.Esta chamada ao construtor é colocado dentro do <> colchetes angulares no Visual Basic e colchetes regulares [] C#.
Por convenção, todas as classes de atributo terminam em “attribute”. Por exemplo, há DescriptionAttribute, ObsoleteAttribute, e as classes de BrowsableAttribute .Em o entanto, várioa linguagens que direcionam o common language runtime, incluindo Visual Basic e C#, não requerem o nome completo do atributo.Por exemplo, ObsoleteAttribute pode ser chamado em código como Obsolete.
Para anexar um atributo existente ao seu componente
Determine quais atributos são necessários para seu componente.
Anexar atributos para seu componente.Observe que você deve usar o nome totalmente qualificado do atributo ou adicione a declaração apropriada de Imports (using).O exemplo a seguir mostra como anexar o atributo de 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 { }
Atributos personalizados
Você também pode criar seus próprios atributos para uso com suas próprias ferramentas personalizados ou aplicativos que herda de Attribute.Você pode adicionar essa classe base para todas as propriedades personalizadas ou métodos necessário por seu aplicativo.
Para criar e aplicar um atributo personalizado
Crie uma classe que herda de Attribute.
Public Class WidgetAttribute Inherits System.Attribute End Class
public class WidgetAttribute: System.Attribute { }
Determine quais propriedades e métodos seu atributo necessário e escreva código para eles.O exemplo a seguir mostra como criar uma propriedade de WidgetType que é definida no construtor da classe de WidgetAttribute .O atributo deAttributeUsageAttribute membros de código que define o atributo pode direcionar.
<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; } }
Aplicar este atributo como você faria com qualquer outro atributo, estando certeza aplicar quaisquer parâmetros necessários.
<WidgetAttribute(WidgetTypeEnum.VerticalWidget)> _ Public Class WidgetFortyFive End Class
[WidgetAttribute(WidgetTypeEnum.VerticalWidget)] public class WidgetFortyFive { }
Consulte também
Tarefas
Como: Fornecer metadados para componentes, propriedades, métodos e eventos
Referência
Conceitos
Acessando os atributos personalizados
Recuperar as informações armazenadas em atributos