TypeConverterAttribute Classe

Définition

Spécifie le type à utiliser comme convertisseur de l'objet auquel cet attribut est lié.Specifies what type to use as a converter for the object this attribute is bound to.

public ref class TypeConverterAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All)]
public sealed class TypeConverterAttribute : Attribute
type TypeConverterAttribute = class
    inherit Attribute
Public NotInheritable Class TypeConverterAttribute
Inherits Attribute
Héritage
TypeConverterAttribute
Attributs

Exemples

L’exemple suivant déclare MyClass pour utiliser le convertisseur de type appelé. MyClassConverterThe following example declares MyClass to use the type converter called MyClassConverter. Cet exemple suppose que MyClassConverter a été implémenté ailleurs.This example assumes that MyClassConverter has been implemented elsewhere. La classe qui implémente leMyClassConverterconvertisseur () doit hériter de la TypeConverter classe.The class implementing the converter (MyClassConverter) must inherit from the TypeConverter class.

[TypeConverter(Class1::MyClassConverter::typeid)]
ref class MyClass{
   // Insert code here.
};
[TypeConverter(typeof(MyClassConverter))]
 public class MyClass {
    // Insert code here.
 }
<TypeConverter(GetType(MyClassConverter))> _
Public Class ClassA
    ' Insert code here.
End Class

L’exemple suivant crée une instance de MyClass.The next example creates an instance of MyClass. Il obtient ensuite les attributs pour la classe et imprime le nom du convertisseur de type utilisé par MyClass.Then it gets the attributes for the class, and prints the name of the type converter used by MyClass.

int main()
{
   // Creates a new instance of MyClass.
   Class1::MyClass^ myNewClass = gcnew Class1::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 = dynamic_cast<TypeConverterAttribute^>(attributes[ TypeConverterAttribute::typeid ]);
   Console::WriteLine( "The type converter for this class is: {0}", myAttribute->ConverterTypeName );
   return 0;
}
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 Shared Function Main() As Integer
    ' Creates a new instance of ClassA.
    Dim myNewClass As New ClassA()
    
    ' Gets the attributes for the instance.
    Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(myNewClass)
    
    ' Prints the name of the type converter by retrieving the
    ' TypeConverterAttribute from the AttributeCollection. 
    Dim myAttribute As TypeConverterAttribute = _
        CType(attributes(GetType(TypeConverterAttribute)), TypeConverterAttribute)
    
    Console.WriteLine(("The type conveter for this class is: " _
        + myAttribute.ConverterTypeName))
    Return 0
End Function 'Main

Remarques

La classe que vous utilisez pour la conversion doit TypeConverterhériter de.The class you use for conversion must inherit from TypeConverter. Utilisez la ConverterTypeName propriété pour obtenir le nom de la classe qui fournit la conversion de données pour l’objet auquel cet attribut est lié.Use the ConverterTypeName property to get the name of the class that provides the data conversion for the object this attribute is bound to.

Pour plus d’informations sur les attributs, consultez Attributs.For more information about attributes, see Attributes. Pour plus d’informations sur les convertisseurs de type TypeConverter , consultez la classe de base et comment: Implémentez un convertisseurde type.For more information about type converters, see the TypeConverter base class and How to: Implement a Type Converter.

Pour établir un convertisseur de type sur une classe personnalisée qui fournit le comportement de conversion de type pour XAML, vous TypeConverterAttribute appliquez l’attribut à votre type.In order to establish a type converter on a custom class that provides type conversion behavior for XAML, you apply the TypeConverterAttribute attribute to your type. L’argument de l’attribut fait référence à votre implémentation de convertisseur de type.The argument of the attribute references your type converter implementation. Votre convertisseur de type doit être en mesure d’accepter des valeurs d’une chaîne utilisée pour les attributs ou le texte d’initialisation dans le balisage XAML, puis de convertir cette chaîne dans le type de destination souhaité.Your type converter should be able to accept values from a string that is used for attributes or initialization text in XAML markup, and convert that string into your intended destination type. Pour plus d’informations, consultez TypeConverters et XAML.For more information, see TypeConverters and XAML.

Plutôt que d’appliquer à toutes les valeurs d’un type, un comportement de convertisseur de type pour XAML peut également être établi sur une propriété spécifique.Rather than applying to all values of a type, a type converter behavior for XAML can also be established on a specific property. Dans ce cas, vous appliquez TypeConverterAttribute à la définition de propriété (la définition externe, pas les get définitions set spécifiques et).In this case, you apply TypeConverterAttribute to the property definition (the outer definition, not the specific get and set definitions).

Un comportement de convertisseur de type pour l’utilisation XAML d’un membre pouvant être attaché personnalisé peut TypeConverterAttribute être assigné get en appliquant à l’accesseur de méthode qui prend en charge l’utilisation de XAML.A type converter behavior for XAML usage of a custom attachable member can be assigned by applying TypeConverterAttribute to the get method accessor that supports the XAML usage. Pour plus d’informations, consultez Vue d’ensemble des propriétés jointes.For more information, see Attached Properties Overview.

Pour les cas de sérialisation XAML complexes qui requièrent un État supplémentaire de l’exécution de l’objet, envisagez de définir un sérialiseur de valeurs en plus d’un convertisseur de type, et Attributez les deux classes de prise en charge sur vos types personnalisés ou membres personnalisés.For complex XAML serialization cases that require additional state from the object runtime, consider defining a value serializer in addition to a type converter, and attribute both support classes on your custom types or custom members. Pour plus d'informations, consultez ValueSerializer.For more information, see ValueSerializer.

Constructeurs

TypeConverterAttribute()

Initialise une nouvelle instance de la classe TypeConverterAttribute avec le convertisseur de type par défaut, qui est une chaîne vide ("").Initializes a new instance of the TypeConverterAttribute class with the default type converter, which is an empty string ("").

TypeConverterAttribute(String)

Initialise une nouvelle instance de la classe TypeConverterAttribute en utilisant le nom de type spécifié comme étant le convertisseur de données pour l'objet auquel cet attribut est lié.Initializes a new instance of the TypeConverterAttribute class, using the specified type name as the data converter for the object this attribute is bound to.

TypeConverterAttribute(Type)

Initialise une nouvelle instance de la classe TypeConverterAttribute en utilisant le type spécifié comme convertisseur de données pour l'objet auquel cet attribut est lié.Initializes a new instance of the TypeConverterAttribute class, using the specified type as the data converter for the object this attribute is bound to.

Champs

Default

Spécifie le type à utiliser comme convertisseur de l'objet auquel cet attribut est lié.Specifies the type to use as a converter for the object this attribute is bound to.

Propriétés

ConverterTypeName

Obtient le nom de type qualifié complet de Type à utiliser comme convertisseur pour l'objet auquel cet attribut est lié.Gets the fully qualified type name of the Type to use as a converter for the object this attribute is bound to.

TypeId

Lors de l'implémentation dans une classe dérivée, obtient un identificateur unique pour l'objet Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Hérité de Attribute)

Méthodes

Equals(Object)

Retourne une valeur indiquant si la valeur de l'objet donné est égale au TypeConverterAttribute en cours.Returns whether the value of the given object is equal to the current TypeConverterAttribute.

GetHashCode()

Retourne le code de hachage de cette instance.Returns the hash code for this instance.

GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Hérité de Attribute)
Match(Object)

En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet en cours.Returns a string that represents the current object.

(Hérité de Object)

Implémentations d’interfaces explicites

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

Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch.Maps a set of names to a corresponding set of dispatch identifiers.

(Hérité de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Hérité de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Hérité de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fournit l'accès aux propriétés et aux méthodes exposées par un objet.Provides access to properties and methods exposed by an object.

(Hérité de Attribute)

S’applique à

Voir aussi