(0) exportieren Drucken
Alle erweitern

TypeConverterAttribute-Klasse

Aktualisiert: November 2007

Gibt an, welcher Typ als Konverter für das Objekt verwendet werden soll, an das dieses Attribut gebunden ist. Diese Klasse kann nicht geerbt werden.

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

[AttributeUsageAttribute(AttributeTargets.All)]
public sealed class TypeConverterAttribute : Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.All) */
public final class TypeConverterAttribute extends Attribute
public final class TypeConverterAttribute extends Attribute

Die für die Konvertierung verwendete Klasse muss von TypeConverter erben. Rufen Sie mit der ConverterTypeName-Eigenschaft den Namen der Klasse ab, die die Datenkonvertierung für das Objekt bereitstellt, an das diese Eigenschaft gebunden ist.

Weitere Informationen über Attribute finden Sie unter Übersicht über Attribute und Erweitern von Metadaten mithilfe von Attributen. Weitere Informationen über Typkonverter finden Sie unter der TypeConverter-Basisklasse und unter Gewusst wie: Implementieren eines Typkonverters.

Im folgenden Beispiel wird MyClass angewiesen, den Typkonverter MyClassConverter zu verwenden. In diesem Beispiel wird davon ausgegangen, dass MyClassConverter an anderer Stelle implementiert ist. Die Klasse MyClassConverter, die den Konverter implementiert, muss von der TypeConverter-Klasse erben.

[TypeConverter(typeof(MyClassConverter))]
 public class MyClass {
    // Insert code here.
 }


/** @attribute TypeConverter(MyClassConverter.class)
 */
public static class MyClass
{
    // Insert code here.
} //MyClass   


Im folgenden Beispiel wird eine Instanz von MyClass erstellt. Anschließend werden die Attribute für die Klasse abgerufen, und der Name des von MyClass verwendeten Typkonverters wird ausgegeben.

public static int Main() {
    // Creates a new instance of MyClass.
    MyClass myNewClass = new MyClass();

    // Gets the attributes for the instance.
    AttributeCollection attributes = TypeDescriptor.GetAttributes(myNewClass);

    /* Prints the name of the type converter by retrieving the 
     * TypeConverterAttribute from the AttributeCollection. */
    TypeConverterAttribute myAttribute = 
        (TypeConverterAttribute)attributes[typeof(TypeConverterAttribute)];

    Console.WriteLine("The type conveter for this class is: " + 
        myAttribute.ConverterTypeName);

    return 0;
 }


public static void main(String[] args)
{
    // Creates a new instance of MyClass.       
    MyClass myNewClass = new MyClass();

    // Gets the attributes for the instance.
    AttributeCollection attributes = 
        TypeDescriptor.GetAttributes(myNewClass);

    /* Prints the name of the type converter by retrieving the 
     * TypeConverterAttribute from the AttributeCollection.
     */
    TypeConverterAttribute myAttribute = ((TypeConverterAttribute)
        (attributes.get_Item( TypeConverterAttribute.class.ToType())));
    Console.WriteLine(("The type conveter for this class is: " 
        + myAttribute.get_ConverterTypeName()));
   } //main 


System.Object
  System.Attribute
    System.ComponentModel.TypeConverterAttribute

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

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 und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0, 1.1, 1.0

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft