TypeConverterAttribute TypeConverterAttribute TypeConverterAttribute TypeConverterAttribute Class

Definizione

Specifica il tipo da utilizzare come convertitore per l'oggetto a cui l'attributo è associato.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
Ereditarietà
TypeConverterAttributeTypeConverterAttributeTypeConverterAttributeTypeConverterAttribute
Attributi

Esempi

Nell'esempio seguente viene dichiarata MyClass l'utilizzo del convertitore di tipi denominato. MyClassConverterThe following example declares MyClass to use the type converter called MyClassConverter. In questo esempio si MyClassConverter presuppone che sia stato implementato altrove.This example assumes that MyClassConverter has been implemented elsewhere. La classe che implementa il convertitoreMyClassConverter() deve ereditare TypeConverter dalla 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 'MyClass

Nell'esempio seguente viene creata un'istanza MyClassdi.The next example creates an instance of MyClass. Ottiene quindi gli attributi per la classe e stampa il nome del convertitore di tipi utilizzato da 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

Commenti

La classe utilizzata per la conversione deve ereditare TypeConverterda.The class you use for conversion must inherit from TypeConverter. Utilizzare la ConverterTypeName proprietà per ottenere il nome della classe che fornisce la conversione dei dati per l'oggetto a cui è associato questo attributo.Use the ConverterTypeName property to get the name of the class that provides the data conversion for the object this attribute is bound to.

Per altre informazioni sugli attributi, vedere Attributi.For more information about attributes, see Attributes. Per ulteriori informazioni sui convertitori di tipi, vedere TypeConverter la classe di base e procedura: Implementare un convertitoredi tipi.For more information about type converters, see the TypeConverter base class and How to: Implement a Type Converter.

Per stabilire un convertitore di tipi in una classe personalizzata che fornisce il comportamento di conversione del tipo per XAML, applicare TypeConverterAttribute l'attributo al tipo.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'argomento dell'attributo fa riferimento all'implementazione del convertitore di tipi.The argument of the attribute references your type converter implementation. Il convertitore di tipi deve essere in grado di accettare valori da una stringa utilizzata per gli attributi o il testo di inizializzazione nel markup XAML e convertire tale stringa nel tipo di destinazione desiderato.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. Per ulteriori informazioni, vedere TypeConverter e XAML.For more information, see TypeConverters and XAML.

Anziché applicare a tutti i valori di un tipo, è possibile stabilire un comportamento del convertitore di tipi per XAML anche in una proprietà specifica.Rather than applying to all values of a type, a type converter behavior for XAML can also be established on a specific property. In questo caso, si applica TypeConverterAttribute alla definizione di proprietà (la definizione esterna, non le definizioni get e set specifiche).In this case, you apply TypeConverterAttribute to the property definition (the outer definition, not the specific get and set definitions).

Un comportamento del convertitore di tipi per l'utilizzo di XAML di un membro collegabile personalizzato può TypeConverterAttribute essere assegnato get applicando alla funzione di accesso del metodo che supporta l'utilizzo di 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. Per altre informazioni, vedere Cenni preliminari sulle proprietà associate.For more information, see Attached Properties Overview.

Per i casi di serializzazione XAML complessi che richiedono uno stato aggiuntivo dal runtime dell'oggetto, è consigliabile definire un serializzatore di valori oltre a un convertitore di tipi e l'attributo supporta entrambe le classi sui tipi personalizzati o i membri personalizzati.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. Per ulteriori informazioni, vedere ValueSerializer.For more information, see ValueSerializer.

Costruttori

TypeConverterAttribute() TypeConverterAttribute() TypeConverterAttribute() TypeConverterAttribute()

Inizializza una nuova istanza della classe TypeConverterAttribute con il convertitore di tipi predefinito, ovvero una stringa vuota ("").Initializes a new instance of the TypeConverterAttribute class with the default type converter, which is an empty string ("").

TypeConverterAttribute(String) TypeConverterAttribute(String) TypeConverterAttribute(String) TypeConverterAttribute(String)

Inizializza una nuova istanza della classe TypeConverterAttribute, utilizzando il nome del tipo specificato come convertitore di dati per l'oggetto a cui è associato questo attributo.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) TypeConverterAttribute(Type) TypeConverterAttribute(Type) TypeConverterAttribute(Type)

Inizializza una nuova istanza della classe TypeConverterAttribute, utilizzando il nome del tipo specificato come convertitore di dati per l'oggetto a cui è associato questo attributo.Initializes a new instance of the TypeConverterAttribute class, using the specified type as the data converter for the object this attribute is bound to.

Campi

Default Default Default Default

Specifica il tipo da utilizzare come convertitore per l'oggetto a cui è associato questo attributo.Specifies the type to use as a converter for the object this attribute is bound to.

Proprietà

ConverterTypeName ConverterTypeName ConverterTypeName ConverterTypeName

Ottiene il nome di tipo completo dell'oggetto Type da utilizzare come convertitore per l'oggetto a cui è associato questo attributo.Gets the fully qualified type name of the Type to use as a converter for the object this attribute is bound to.

TypeId TypeId TypeId TypeId

Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

Metodi

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Specifica se il valore dell'oggetto specificato è uguale all'oggetto TypeConverterAttribute corrente.Returns whether the value of the given object is equal to the current TypeConverterAttribute.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Restituisce il codice hash per l'istanza.Returns the hash code for this instance.

GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Implementazioni dell'interfaccia esplicita

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

Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch.Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornisce l'accesso a proprietà e metodi esposti da un oggetto.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Si applica a

Vedi anche