DesignerCategoryAttribute Klas

Definitie

Hiermee geeft u op dat de ontwerper voor een klasse deel uitmaakt van een bepaalde categorie.

public ref class DesignerCategoryAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=true)]
public sealed class DesignerCategoryAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=true)>]
type DesignerCategoryAttribute = class
    inherit Attribute
Public NotInheritable Class DesignerCategoryAttribute
Inherits Attribute
Overname
DesignerCategoryAttribute
Kenmerken

Voorbeelden

In het volgende voorbeeld wordt een klasse gemaakt met de naam MyForm. MyForm heeft twee kenmerken, een DesignerAttribute die aangeeft dat deze klasse gebruikmaakt van de DocumentDesigneren een die DesignerCategoryAttribute de Form categorie aangeeft.

[Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design",
IRootDesigner::typeid),
DesignerCategory("Form")]
ref class MyForm: public ContainerControl{
   // Insert code here.
};
[Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design",
    typeof(IRootDesigner)),
    DesignerCategory("Form")]

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

In het volgende voorbeeld wordt een exemplaar van MyForm. Vervolgens worden de kenmerken voor de klasse opgehaald, wordt de DesignerCategoryAttributenaam van de ontwerper geëxtraheerd en afgedrukt.

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 
       * DesignerCategoryAttribute from the AttributeCollection. */
   DesignerCategoryAttribute^ myAttribute = dynamic_cast<DesignerCategoryAttribute^>(attributes[ DesignerCategoryAttribute::typeid ]);
   Console::WriteLine( "The category of the designer for this class is: {0}", myAttribute->Category );
   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 
     * DesignerCategoryAttribute from the AttributeCollection. */
    DesignerCategoryAttribute myAttribute =
       (DesignerCategoryAttribute)attributes[typeof(DesignerCategoryAttribute)];
    Console.WriteLine("The category of the designer for this class is: " + myAttribute.Category);

    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
    ' DesignerCategoryAttribute from the AttributeCollection. 
    Dim myAttribute As DesignerCategoryAttribute = _
        CType(attributes(GetType(DesignerCategoryAttribute)), DesignerCategoryAttribute)
    Console.WriteLine(("The category of the designer for this class is: " + myAttribute.Category))
    Return 0
End Function 'Main

Opmerkingen

Een visuele ontwerper kan een ontwerpcategorie gebruiken om een ontwikkelomgeving te informeren over het type ontwerper dat wordt geïmplementeerd. Als er geen ontwerpfunctiecategorie is opgegeven in een klasse, kan een ontwikkelomgeving de klasse wel of niet toestaan om te worden ontworpen. Er kan een categorie worden gemaakt voor elke naam.

Wanneer u een klasse markeert met dit kenmerk, wordt deze ingesteld op een constant lid. Wanneer u de waarde van dit kenmerk in uw code wilt controleren, moet u het constante lid opgeven. De kolom Beschrijving in de onderstaande tabel bevat het constante lid waarop elke waarde is ingesteld.

De DesignerCategoryAttribute klasse definieert de volgende algemene categorieën:

Categorie Beschrijving
Onderdeel Ontwerpers die worden gebruikt met onderdelen. Het kenmerk is ingesteld op het constante lid DesignerCategoryAttribute.Component.
Form Ontwerpers die worden gebruikt met formulieren. Het kenmerk is ingesteld op het constante lid DesignerCategoryAttribute.Form.
Ontwerper Ontwerpers die worden gebruikt met ontwerpers. Het kenmerk is ingesteld op het constante lid DesignerCategoryAttribute.Generic.
Lege tekenreeks ("") Dit is de standaardcategorie.

Zie Kenmerken voor meer informatie.

Constructors

Name Description
DesignerCategoryAttribute()

Initialiseert een nieuw exemplaar van de DesignerCategoryAttribute klasse met een lege tekenreeks ("").

DesignerCategoryAttribute(String)

Initialiseert een nieuw exemplaar van de DesignerCategoryAttribute klasse met de opgegeven categorienaam.

Velden

Name Description
Component

Hiermee geeft u op dat een onderdeel dat is gemarkeerd met deze categorie een onderdeelontwerper gebruikt. Dit veld is alleen-lezen.

Default

Hiermee geeft u op dat een onderdeel dat is gemarkeerd met deze categorie, geen visualontwerper kan gebruiken. Dit static veld heeft het kenmerk Alleen-lezen.

Form

Hiermee geeft u op dat een onderdeel dat is gemarkeerd met deze categorie een formulierontwerper gebruikt. Dit static veld heeft het kenmerk Alleen-lezen.

Generic

Hiermee geeft u op dat een onderdeel dat is gemarkeerd met deze categorie een algemene ontwerper gebruikt. Dit static veld heeft het kenmerk Alleen-lezen.

Eigenschappen

Name Description
Category

Hiermee haalt u de naam van de categorie op.

TypeId

Hiermee haalt u een unieke id voor dit kenmerk op.

Methoden

Name Description
Equals(Object)

Geeft als resultaat of de waarde van het opgegeven object gelijk is aan de huidige DesignOnlyAttribute.

GetHashCode()

Retourneert de hash-code voor dit exemplaar.

GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
IsDefaultAttribute()

Bepaalt of dit kenmerk de standaardwaarde is.

Match(Object)

Wanneer deze wordt overschreven in een afgeleide klasse, wordt een waarde geretourneerd die aangeeft of dit exemplaar gelijk is aan een opgegeven object.

(Overgenomen van Attribute)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Expliciete interface-implementaties

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

Hiermee wordt een set namen toegewezen aan een bijbehorende set verzend-id's.

(Overgenomen van Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Hiermee haalt u de typegegevens voor een object op, die kan worden gebruikt om de typegegevens voor een interface op te halen.

(Overgenomen van Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Hiermee wordt het aantal type-informatieinterfaces opgehaald dat een object biedt (0 of 1).

(Overgenomen van Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Biedt toegang tot eigenschappen en methoden die door een object worden weergegeven.

(Overgenomen van Attribute)

Van toepassing op

Zie ook