Freigeben über


EditorAttribute-Klasse

Gibt den Editor an, mit dem eine Eigenschaft geändert werden kann. Diese Klasse kann nicht geerbt werden.

Namespace: System.ComponentModel
Assembly: System (in system.dll)

Syntax

'Declaration
<AttributeUsageAttribute(AttributeTargets.All, AllowMultiple:=True, Inherited:=True)> _
Public NotInheritable Class EditorAttribute
    Inherits Attribute
'Usage
Dim instance As EditorAttribute
[AttributeUsageAttribute(AttributeTargets.All, AllowMultiple=true, Inherited=true)] 
public sealed class EditorAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::All, AllowMultiple=true, Inherited=true)] 
public ref class EditorAttribute sealed : public Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.All, AllowMultiple=true, Inherited=true) */ 
public final class EditorAttribute extends Attribute
AttributeUsageAttribute(AttributeTargets.All, AllowMultiple=true, Inherited=true) 
public final class EditorAttribute extends Attribute

Hinweise

Beim Bearbeiten einer Eigenschaft erstellt ein visueller Designer eine neue Instanz des angegebenen Editors über ein Dialogfeld oder ein Dropdownfenster.

Suchen Sie den Basistyp dieses Editors mithilfe der EditorBaseTypeName-Eigenschaft. Der einzige verfügbare Basistyp ist UITypeEditor.

Mithilfe der EditorTypeName-Eigenschaft können Sie den Namen des Editor-Typs abrufen, der diesem Attribut zugeordnet ist.

Allgemeine Informationen über das Verwenden von Attributen finden Sie unter Übersicht über Attribute und Erweitern von Metadaten mithilfe von Attributen. Weitere Informationen über Entwurfszeitattribute finden Sie unter Attribute und Entwurfszeitunterstützung.

Beispiel

Im folgenden Codebeispiel wird die MyImage-Klasse erstellt. Die Klasse wird mit einem EditorAttribute markiert, das den ImageEditor als Editor angibt.

<Editor("System.Windows.Forms.ImageEditorIndex, System.Design", _
    GetType(UITypeEditor))> _
Public Class MyImage
    ' Insert code here.
End Class 'MyImage
[Editor("System.Windows.Forms.ImageEditorIndex, System.Design", 
    typeof(UITypeEditor))]

public class MyImage
{
    // Insert code here.
 }
[Editor("System.Windows.Forms.ImageEditorIndex, System.Design",
UITypeEditor::typeid)]
public ref class MyImage{
   // Insert code here.
};
/** @attribute Editor("System.Windows.Forms.ImageEditorIndex, " 
     + "System.Design", UITypeEditor.class)
 */
public static class MyImage
{
    // Insert code here.
} //MyImage

Im folgenden Codebeispiel wird eine Instanz der MyImage-Klasse erstellt, und es werden die Attribute für die Klasse abgerufen. Anschließend wird der Name des von myNewImage verwendeten Editors ausgegeben.

Public Shared Sub Main()
    ' Creates a new component.
    Dim myNewImage As New MyImage()
    
    ' Gets the attributes for the component.
    Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(myNewImage)
    
    ' Prints the name of the editor by retrieving the EditorAttribute
    ' from the AttributeCollection. 
    
    Dim myAttribute As EditorAttribute = CType(attributes(GetType(EditorAttribute)), EditorAttribute)
    Console.WriteLine(("The editor for this class is: " & myAttribute.EditorTypeName))

End Sub 'Main
public static int Main() {
    // Creates a new component.
    MyImage myNewImage = new MyImage();
 
    // Gets the attributes for the component.
    AttributeCollection attributes = TypeDescriptor.GetAttributes(myNewImage);
 
    /* Prints the name of the editor by retrieving the EditorAttribute 
     * from the AttributeCollection. */
    
    EditorAttribute myAttribute = (EditorAttribute)attributes[typeof(EditorAttribute)];
    Console.WriteLine("The editor for this class is: " + myAttribute.EditorTypeName);
 
    return 0;
 }
int main()
{
   // Creates a new component.
   MyImage^ myNewImage = gcnew MyImage;

   // Gets the attributes for the component.
   AttributeCollection^ attributes = TypeDescriptor::GetAttributes( myNewImage );

   /* Prints the name of the editor by retrieving the EditorAttribute 
       * from the AttributeCollection. */
   EditorAttribute^ myAttribute = dynamic_cast<EditorAttribute^>(attributes[ EditorAttribute::typeid ]);
   Console::WriteLine( "The editor for this class is: {0}", myAttribute->EditorTypeName );
   return 0;
}
public static void main(String[] args)
{
    // Creates a new component.        
    MyImage myNewImage = new MyImage();

    // Gets the attributes for the component.
    AttributeCollection attributes = 
        TypeDescriptor.GetAttributes(myNewImage);

    /* Prints the name of the editor by retrieving the EditorAttribute 
       from the AttributeCollection. 
     */
    EditorAttribute myAttribute = (EditorAttribute)(
        attributes.get_Item(EditorAttribute.class.ToType()));

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

Vererbungshierarchie

System.Object
   System.Attribute
    System.ComponentModel.EditorAttribute

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

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

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

EditorAttribute-Member
System.ComponentModel-Namespace