Freigeben über


DesignerAttribute Klasse

Definition

Gibt die Klasse an, die zum Implementieren von Entwurfszeitdiensten für eine Komponente verwendet wird.

public ref class DesignerAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=true, Inherited=true)]
public sealed class DesignerAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface, AllowMultiple=true, Inherited=true)>]
type DesignerAttribute = class
    inherit Attribute
Public NotInheritable Class DesignerAttribute
Inherits Attribute
Vererbung
DesignerAttribute
Attribute

Beispiele

Im folgenden Beispiel wird eine Klasse mit dem Namen MyForm. MyForm verfügt über zwei Attribute, eine DesignerAttribute , die diese Klasse DocumentDesignerverwendet, und eine DesignerCategoryAttribute , die die Form Kategorie angibt.

[Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design.DLL",
IRootDesigner::typeid),
DesignerCategory("Form")]
ref class MyForm: public ContainerControl{
   // Insert code here.
};
[Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design.DLL",
    typeof(IRootDesigner)),
    DesignerCategory("Form")]
public class MyForm : ContainerControl
{
    // Insert code here.
}
<Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design.DLL", _
    GetType(IRootDesigner)), DesignerCategory("Form")> _
Public Class MyForm
    
    Inherits ContainerControl
    ' Insert code here.
End Class

Im nächsten Beispiel wird eine Instanz von MyForm. Anschließend werden die Attribute für die Klasse extrahiert DesignerAttributeund der Name des Designers gedruckt.

int main()
{
   // Creates a new form.
   MyForm^ myNewForm = gcnew MyForm;

   // Gets the attributes for the collection.
   AttributeCollection^ attributes = TypeDescriptor::GetAttributes( myNewForm );

   /* Prints the name of the designer by retrieving the DesignerAttribute
       * from the AttributeCollection. */
   DesignerAttribute^ myAttribute = dynamic_cast<DesignerAttribute^>(attributes[ DesignerAttribute::typeid ]);
   Console::WriteLine( "The designer for this class is: {0}", myAttribute->DesignerTypeName );
   return 0;
}
public static int Main()
{
    // Creates a new form.
    MyForm myNewForm = new();

    // Gets the attributes for the collection.
    AttributeCollection attributes = TypeDescriptor.GetAttributes(myNewForm);

    /* Prints the name of the designer by retrieving the DesignerAttribute
     * from the AttributeCollection. */
    DesignerAttribute myAttribute =
       (DesignerAttribute)attributes[typeof(DesignerAttribute)];
    Console.WriteLine("The designer for this class is: " + myAttribute.DesignerTypeName);

    return 0;
}
Public Shared Function Main() As Integer
    ' Creates a new form.
    Dim myNewForm As New MyForm()
    
    ' Gets the attributes for the collection.
    Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(myNewForm)
    
    ' Prints the name of the designer by retrieving the DesignerAttribute
    ' from the AttributeCollection. 
    Dim myAttribute As DesignerAttribute = _
        CType(attributes(GetType(DesignerAttribute)), DesignerAttribute)
    Console.WriteLine(("The designer for this class is: " & myAttribute.DesignerTypeName))
    
    Return 0
End Function 'Main

Hinweise

Die Klasse, die Sie für die Entwurfszeitdienste verwenden, muss die IDesigner Schnittstelle implementieren.

Verwenden Sie die DesignerBaseTypeName Eigenschaft, um den Basistyp des Designers zu finden. Verwenden Sie die DesignerTypeName Eigenschaft, um den Namen des Mit diesem Member verknüpften Designertyps abzurufen.

Weitere Informationen finden Sie unter Attribute.

Konstruktoren

Name Beschreibung
DesignerAttribute(String, String)

Initialisiert eine neue Instanz der DesignerAttribute Klasse mithilfe des Designertyps und der Basisklasse für den Designer.

DesignerAttribute(String, Type)

Initialisiert eine neue Instanz der DesignerAttribute Klasse, wobei der Name der Designerklasse und die Basisklasse für den Designer verwendet wird.

DesignerAttribute(String)

Initialisiert eine neue Instanz der DesignerAttribute Klasse mithilfe des Namens des Typs, der Entwurfszeitdienste bereitstellt.

DesignerAttribute(Type, Type)

Initialisiert eine neue Instanz der DesignerAttribute Klasse mithilfe der Typen der Designer- und Designerbasisklasse.

DesignerAttribute(Type)

Initialisiert eine neue Instanz der DesignerAttribute Klasse mithilfe des Typs, der Entwurfszeitdienste bereitstellt.

Eigenschaften

Name Beschreibung
DesignerBaseTypeName

Ruft den Namen des Basistyps dieses Designers ab.

DesignerTypeName

Ruft den Namen des Designertyps ab, der diesem Designer-Attribut zugeordnet ist.

TypeId

Ruft eine eindeutige ID für diesen Attributtyp ab.

Methoden

Name Beschreibung
Equals(Object)

Gibt zurück, ob der Wert des angegebenen Objekts dem aktuellen DesignerAttributeentspricht.

GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Wenn sie in einer abgeleiteten Klasse überschrieben wird, gibt an, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
Match(Object)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem angegebenen Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

Name Beschreibung
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit denen die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bietet Zugriff auf Eigenschaften und Methoden, die von einem Objekt verfügbar gemacht werden.

(Geerbt von Attribute)

Gilt für:

Weitere Informationen