Atributos de tempo de design para componentes

Se você não estiver familiarizado com aplicar atributos para fornecer metadados para o common language runtime, consulte estendendo metadados usando atributos. Porque os componentes podem ser exibidas em um designer, tal como Visual Studio, requerem os atributos metadados que fornecem ferramentas em tempo de design. Esta seção descreve e fornece uma lista de atributos em tempo de design para uso geral.

Atributos e suporte de designer

Atributos de tempo de design são essenciais para exibir o controle e seus membros corretamente em tempo de design, pois fornecem informações valiosa para uma ferramenta de design visual.

Em o fragmento de código a seguir, o atributo de CategoryAttribute permite que o navegador de propriedade para exibir a propriedade de TextAlignment na categoria de alinhamento. O atributo de DescriptionAttribute permite que o navegador de propriedade fornece uma breve descrição da propriedade quando um usuário clica na.

[
Category("Alignment"),
Description("Specifies the alignment of text.")
]
public ContentAlignment TextAlignment { //... }
<Category("Alignment"), _
Description("Specifies the alignment of text.")> _
Public Property _
TextAlignment As ContentAlignment
   ' ...
End Property

Dica

Em Visual C# e em Visual Basic, uma classe de atributos chamada AttributeNameAttributepode ser referenciada simplesmente como AttributeName na sintaxe de atributo.

Alguns atributos de tempo de design são aplicados a nível de classe. Um atributo de DesignerAttribute é aplicado a nível de classe e informa o designer de formulários que a classe do designer para usar para exibir o controle. Os componentes são associados com um designer padrão (System.ComponentModel.Design.ComponentDesigner), e formulários do windows e controles de servidor de ASP.NET são associados com seu próprio designer padrão. Aplicar DesignerAttribute somente se você definir um designer personalizado para o componente ou controle.

// Associates the designer class SimpleControl.Design.SimpleDesigner
// with Simple.
[ Designer(typeof(SimpleControl.Design.SimpleDesigner))]
    public class Simple : WebControl { //... }
' Associates the designer class SimpleControl.Design.SimpleDesigner
' with Simple.
<Designer(GetType(SimpleControl.Design.SimpleDesigner))> _
Public Class Simple
    Inherits WebControl
    ' ...
End Class

Atributos comuns para propriedades e eventos

A tabela a seguir lista os atributos que geralmente são aplicados às propriedades e eventos.

Atributo

Aplicado a

Descrição

BrowsableAttribute

Propriedades e eventos

Especifica se uma propriedade ou evento deve ser exibido no navegador de propriedade.

CategoryAttribute

Propriedades e eventos

Especifica o nome da categoria na qual grupo uma propriedade ou um evento. Quando as categorias são usadas, as propriedades de componentes e eventos podem ser exibidos em agrupamentos lógicos no navegador de propriedade.

DescriptionAttribute

Propriedades e eventos

Define um pequeno bloco texto a ser exibido na parte inferior do navegador de propriedade quando o usuário seleciona uma propriedade ou um evento.

BindableAttribute

Propriedades

A propriedade especifica se uma é interessante de associação.

DefaultPropertyAttribute

Propriedades

(Inserir este atributo antes da declaração de classe.)

Especifica a propriedade padrão para o componente. Esta propriedade está selecionada no navegador de propriedade quando um usuário clica no controle.

DefaultValueAttribute

Propriedades

Define um valor padrão para uma propriedade simples.

EditorAttribute

Propriedades

Especifica o editor para usar para editar (alterar) uma propriedade em um designer visual.

LocalizableAttribute

Propriedades

Especifica que uma propriedade pode ser encontrada. Todas as propriedades que têm esse atributo são mantidas automaticamente no arquivo de recursos quando um usuário escolher para localizar um formulário.

DesignerSerializationVisibilityAttribute

Propriedades

Especifica se (como) e uma propriedade exibida no navegador de propriedade deve ser mantidas no código.

TypeConverterAttribute

Propriedades

Especifica o conversor de tipos para usar o para converter o tipo da propriedade para outro tipo de dados.

DefaultEventAttribute

Eventos

(Inserir este atributo antes da declaração de classe.)

Especifica o evento padrão do componente. Este é o evento que está selecionado no navegador de propriedade quando um usuário clica no componente.

Salvo indicação em vez de isso, os atributos para propriedades e eventos são colocados no código imediatamente antes da declaração de propriedade ou do evento, conforme mostrado no exemplo o seguir.

// To apply CategoryAttribute to the BorderColor 
// property, place it immediately before the declaration
// of the BorderColor property.
[Category("Appearance")] 
public Color BorderColor;

// To apply DescriptionAttribute to the Click event, 
// place it immediately before the declaration
// of the Click event.
[Description("The Click event of the button")]
public event EventHandler Click;
' To apply CategoryAttribute  to the BorderColor 
' property, place it before the property declaration.
<Category("Appearance")> Public BorderColor As Color

' To apply DescriptionAttribute to the Click event, 
' place it before the event declaration.
<Description("The Click event of the button")> Public Event Click

Para obter informações sobre os atributos de tempo de design que associam designer com componentes e controles, consulte Estendendo o suporte para tempo de design.

Além de usar as classes de atributo definidas na biblioteca de classes de .NET Framework , você pode definir suas próprias classes de atributos. Para obter detalhes, consulte a documentação para a linguagem de programação ou Escrevendo atributos personalizadosconsulte.

Consulte também

Tarefas

Como aplicar atributos em controles dos Windows Forms

Conceitos

Atributos e suporte para tempo de design

Atributos em controles dos Windows Forms

Outros recursos

Estendendo o suporte para tempo de design