Entwurfszeitattribute für Komponenten

Wenn Sie keine Erfahrungen mit dem Zuweisen von Attributen für die Bereitstellung von Metadaten für die Common Language Runtime haben, finden Sie Informationen hierzu unter Erweitern von Metadaten mithilfe von Attributen. Da Komponenten in einem Designer wie Visual Studio angezeigt werden können, sind Attribute erforderlich, durch die Metadaten für Entwurfszeittools bereitgestellt werden. In diesem Abschnitt werden häufig verwendete Entwurfszeitattribute beschrieben und in einer Liste zusammengestellt.

Attribute und Designerunterstützung

Entwurfszeitattribute sind für das korrekte Anzeigen des Steuerelements und dessen Membern zur Entwurfszeit erforderlich, da sie wichtige Informationen für Tools für den visuellen Entwurf bereitstellen.

Im folgenden Codefragment ermöglicht das CategoryAttribute-Attribut dem Eigenschaftenbrowser das Anzeigen der TextAlignment-Eigenschaft in der Ausrichtungskategorie. Das DescriptionAttribute-Attribut ermöglicht dem Eigenschaftenbrowser, eine Kurzbeschreibung der Eigenschaft bereitzustellen, wenn ein Benutzer darauf klickt.

[
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

Tipp

In Visual C# und Visual Basic kann in der Attributsyntax einfach mit AttributeName auf eine Attributklasse mit dem Namen AttributeName verwiesen werden.

Einige Entwurfszeitattribute werden auf Klassenebene zugewiesen. Ein DesignerAttribute-Attribut wird auf Klassenebene zugewiesen und informiert den Formulardesigner über die für das Anzeigen des Steuerelements zu verwendende Designerklasse. Komponenten werden einem Standarddesigner (System.ComponentModel.Design.ComponentDesigner) und Windows Forms- sowie ASP.NET-Serversteuerelemente den eigenen Standarddesignern zugewiesen. Verwenden Sie DesignerAttribute nur, wenn Sie einen benutzerdefinierten Designer für die Komponente oder das Steuerelement festlegen.

// 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

Häufig verwendete Attribute für Eigenschaften und Ereignisse

In der folgenden Tabelle werden die Eigenschaften und Ereignisse häufig zugewiesenen Attribute aufgeführt.

Attribut

Betrifft

Beschreibung

BrowsableAttribute

Eigenschaften und Ereignisse

Gibt an, ob eine Eigenschaft oder ein Ereignis im Eigenschaftenbrowser angezeigt werden soll.

CategoryAttribute

Eigenschaften und Ereignisse

Gibt den Namen der Kategorie an, in der eine Eigenschaft oder ein Ereignis gruppiert werden soll. Wenn Kategorien verwendet werden, können Komponenteneigenschaften und -ereignisse im Eigenschaftenbrowser in logischen Gruppierungen angezeigt werden.

DescriptionAttribute

Eigenschaften und Ereignisse

Definiert einen kleinen Textblock, der am unteren Rand des Eigenschaftenbrowsers angezeigt wird, wenn ein Benutzer eine Eigenschaft bzw. ein Ereignis auswählt.

BindableAttribute

Eigenschaften

Gibt an, ob eine Eigenschaft für das Binden geeignet ist.

DefaultPropertyAttribute

Eigenschaften

(Fügen Sie dieses Attribut vor der Klassendeklaration ein.)

Gibt die Standardeigenschaft für die Komponente an. Diese Eigenschaft wird im Eigenschaftenbrowser ausgewählt, wenn ein Benutzer auf das Steuerelement klickt.

DefaultValueAttribute

Eigenschaften

Legt einen einfachen Standardwert für eine Eigenschaft fest.

EditorAttribute

Eigenschaften

Gibt den für das Bearbeiten (Ändern) einer Eigenschaft in einem visuellen Designer zu verwendenden Editor an.

LocalizableAttribute

Eigenschaften

Gibt an, dass eine Eigenschaft lokalisiert werden kann. Alle Eigenschaften mit diesem Attribut werden automatisch in der Ressourcendatei beibehalten, wenn ein Benutzer die Lokalisierung eines Formulars wählt.

DesignerSerializationVisibilityAttribute

Eigenschaften

Gibt an, ob (und wie) eine im Eigenschaftenbrowser angezeigte Eigenschaft im Code beibehalten werden soll.

TypeConverterAttribute

Eigenschaften

Gibt den für das Konvertieren des Typs der Eigenschaft in einen anderen Datentyp zu verwendenden Typkonverter an.

DefaultEventAttribute

Ereignisse

(Fügen Sie dieses Attribut vor der Klassendeklaration ein.)

Gibt das Standardereignis für die Komponente an. Dieses Ereignis wird im Eigenschaftenbrowser ausgewählt, wenn ein Benutzer auf die Komponente klickt.

Sofern nicht anders angegeben, werden Attribute für Eigenschaften und Ereignisse im Code direkt vor der Deklaration der Eigenschaft bzw. des Ereignisses platziert, wie das folgende Beispiel veranschaulicht.

// 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

Weitere Informationen über Entwurfszeitattribute, durch die Designern Komponenten und Steuerelemente zugeordnet werden, finden Sie unter Erweitern der Entwurfszeitunterstützung.

Zusätzlich zu den in der .NET Framework-Klassenbibliothek definierten Attributklassen können Sie eigene Attributklassen definieren. Ausführliche Informationen finden Sie in der Dokumentation zur Programmiersprache oder unter Verfassen von benutzerdefinierten Attributen.

Siehe auch

Aufgaben

Gewusst wie: Anwenden von Attributen auf Windows Forms-Steuerelemente

Konzepte

Attribute und Entwurfszeitunterstützung

Attribute in Windows Forms-Steuerelementen

Weitere Ressourcen

Erweitern der Entwurfszeitunterstützung