Questa documentazione è stata archiviata e non viene gestita.

Classe DesignerAttribute

Aggiornamento: novembre 2007

Specifica la classe utilizzata per implementare i servizi della fase di progettazione per un componente.

Spazio dei nomi:  System.ComponentModel
Assembly:  System (in System.dll)

[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Interface, AllowMultiple = true, 
	Inherited = true)]
public sealed class DesignerAttribute : Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Interface, AllowMultiple = true, Inherited = true) */
public final class DesignerAttribute extends Attribute
public final class DesignerAttribute extends Attribute

È necessario che la classe utilizzata per i servizi della fase di progettazione implementi l'interfaccia IDesigner.

Utilizzare la proprietà DesignerBaseTypeName per trovare il tipo base della finestra di progettazione. Utilizzare la proprietà DesignerTypeName per ottenere il nome del tipo di finestra di progettazione associato a questo membro.

Per ulteriori informazioni, vedere Cenni preliminari sugli attributi e Estensione di metadati mediante attributi.

Nell'esempio riportato di seguito viene creata una classe denominata MyForm. MyForm dispone di due attributi, DesignerAttribute, che specifica che la classe utilizza DocumentDesigner e DesignerCategoryAttribute che specifica la categoria Form.

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


/** @attribute Designer("System.Windows.Forms.Design.DocumentDesigner,"+
    "System.Windows.Forms.Design.DLL", IRootDesigner.class)
    @attribute DesignerCategory("Form")
 */
public static class MyForm extends ContainerControl
{
    // Insert code here.
} //MyForm


Nell'esempio successivo viene creata un'istanza di MyForm. Vengono quindi ottenuti gli attributi per la classe, viene estratto l'attributo DesignerAttribute e viene visualizzato il nome della finestra di progettazione.

public static int Main() {
    // Creates a new form.
    MyForm myNewForm = new 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 = 
       (DesignerAttribute)attributes[typeof(DesignerAttribute)];
    Console.WriteLine("The designer for this class is: " + myAttribute.DesignerTypeName);

    return 0;
}


public static void main(String[] args)
{
    // Creates a new form.
    MyForm myNewForm = new 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 = (DesignerAttribute)(
        attributes.get_Item(DesignerAttribute.class.ToType()));

    Console.WriteLine(("The designer for this class is: " 
        + myAttribute.get_DesignerTypeName()));
} //main


System.Object
  System.Attribute
    System.ComponentModel.DesignerAttribute

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition , Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

.NET Framework

Supportato in: 3.5, 3.0, 2.0, 1.1, 1.0
Mostra: