TypeConverterAttribute TypeConverterAttribute TypeConverterAttribute TypeConverterAttribute Class

Definition

Especifica el tipo que se debe utilizar como convertidor para el objeto al que está enlazado este atributo. 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
Inheritance
TypeConverterAttributeTypeConverterAttributeTypeConverterAttributeTypeConverterAttribute
Attributes

Examples

En el ejemplo siguiente se declara MyClass para usar el convertidor de tipos denominado MyClassConverter.The following example declares MyClass to use the type converter called MyClassConverter. En este ejemplo se da por supuesto que MyClassConverter se ha implementado en otro lugar.This example assumes that MyClassConverter has been implemented elsewhere. La clase que implementa el convertidor (MyClassConverter) debe heredar de la TypeConverter clase.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

En el ejemplo siguiente se crea una instancia de MyClass.The next example creates an instance of MyClass. A continuación, obtiene los atributos de la clase y se imprime el nombre del convertidor utilizado 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

Remarks

La clase que se utiliza para la conversión debe heredar de TypeConverter.The class you use for conversion must inherit from TypeConverter. Use el ConverterTypeName depende de la propiedad para obtener el nombre de la clase que proporciona la conversión de datos para el objeto de este atributo.Use the ConverterTypeName property to get the name of the class that provides the data conversion for the object this attribute is bound to.

Para obtener más información sobre atributos, vea Atributos.For more information about attributes, see Attributes. Para obtener más información sobre los convertidores de tipos, vea la TypeConverter clase base y Cómo: implementar un convertidor de tipos.For more information about type converters, see the TypeConverter base class and How to: Implement a Type Converter.

Para establecer un convertidor de tipos en una clase personalizada que proporciona el comportamiento de conversión de tipos para XAML, aplique el TypeConverterAttribute a su tipo de atributo.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. El argumento del atributo hace referencia a la implementación del convertidor de tipos.The argument of the attribute references your type converter implementation. El convertidor de tipos debe ser capaz de aceptar los valores de una cadena que se usa para atributos o texto de inicialización en el marcado XAML y convertir esa cadena en el tipo de destino previsto.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. Para obtener más información, consulte clases TypeConverter y XAML.For more information, see TypeConverters and XAML.

En lugar de aplicar a todos los valores de un tipo, un comportamiento del convertidor de tipos para XAML también se puede establecer en una propiedad concreta.Rather than applying to all values of a type, a type converter behavior for XAML can also be established on a specific property. En este caso, se aplica TypeConverterAttribute a la definición de propiedad (la definición externa, no las específicas get y set definiciones).In this case, you apply TypeConverterAttribute to the property definition (the outer definition, not the specific get and set definitions).

Un comportamiento del convertidor de tipo para el uso XAML de un miembro adjuntable personalizado puede asignarse aplicando TypeConverterAttribute a la get descriptor de acceso de método que admite el uso 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. Para más información, consulte la información general sobre propiedades adjuntas.For more information, see Attached Properties Overview.

Para los casos de serialización XAML complejos que requieren el estado adicional del runtime de objeto, considere la posibilidad de definir un serializador de valor además de un convertidor de tipos y un atributo ambas clases de soporte técnico en sus tipos personalizados o miembros personalizados.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. Para obtener más información, vea ValueSerializer.For more information, see ValueSerializer.

Constructors

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

Inicializa una nueva instancia de la clase TypeConverterAttribute con el convertidor de tipos predeterminado, que es una cadena vacía (""). 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)

Inicializa una nueva instancia de la clase TypeConverterAttribute utilizando el nombre de tipo especificado como convertidor de datos para el objeto al que este atributo está enlazado. 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)

Inicializa una nueva instancia de la clase TypeConverterAttribute utilizando el tipo especificado como convertidor de datos para el objeto al que está enlazado este atributo. Initializes a new instance of the TypeConverterAttribute class, using the specified type as the data converter for the object this attribute is bound to.

Fields

Default Default Default Default

Especifica el tipo que se debe utilizar como convertidor para el objeto al que está enlazado este atributo. Specifies the type to use as a converter for the object this attribute is bound to.

Properties

ConverterTypeName ConverterTypeName ConverterTypeName ConverterTypeName

Obtiene el nombre completo de Type que se utilizará como convertidor del objeto al que está enlazado este atributo. 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

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute. When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

Methods

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

Devuelve un valor que indica si el valor del objeto especificado es igual al atributo TypeConverterAttribute actual. Returns whether the value of the given object is equal to the current TypeConverterAttribute.

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

Devuelve el código hash de esta instancia. Returns the hash code for this instance.

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

Obtiene el Type de la instancia actual. Gets the Type of the current instance.

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

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada. 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)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado. 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 superficial del Object actual. Creates a shallow copy of the current Object.

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

Devuelve una cadena que representa el objeto actual. Returns a string that represents the current object.

(Inherited from Object)

Explicit Interface Implementations

_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)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. 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)

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz. 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 el número de interfaces de información de tipo que proporciona un objeto (0 ó 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)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto. Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Applies to

See Also