TypeConverterAttribute 클래스

정의

이 특성이 바인딩되는 개체에 대한 변환기로 사용할 형식을 지정합니다.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
상속
TypeConverterAttribute
특성

예제

다음 예제에서는 MyClassConverter라는 형식 변환기를 사용 하도록 MyClass를 선언 합니다.The following example declares MyClass to use the type converter called MyClassConverter. 이 예에서는 MyClassConverter 다른 곳에서 구현 된 것으로 가정 합니다.This example assumes that MyClassConverter has been implemented elsewhere. 변환기 (MyClassConverter)를 구현 하는 클래스는 TypeConverter 클래스에서 상속 해야 합니다.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의 인스턴스를 만듭니다.The next example creates an instance of MyClass. 그런 다음 클래스에 대 한 특성을 가져오고 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

설명

변환에 사용 하는 클래스는 TypeConverter에서 상속 되어야 합니다.The class you use for conversion must inherit from TypeConverter. ConverterTypeName 속성을 사용 하 여이 특성이 바인딩되는 개체에 대 한 데이터 변환을 제공 하는 클래스의 이름을 가져옵니다.Use the ConverterTypeName property to get the name of the class that provides the data conversion for the object this attribute is bound to.

특성에 대한 자세한 내용은 특성을 참조하세요.For more information about attributes, see Attributes. 형식 변환기에 대 한 자세한 내용은 참조는 TypeConverter 기본 클래스 및 방법: 형식 변환기를 구현합니다.For more information about type converters, see the TypeConverter base class and How to: Implement a Type Converter.

XAML에 대 한 형식 변환 동작을 제공 하는 사용자 지정 클래스에서 형식 변환기를 설정 하려면 형식에 TypeConverterAttribute 특성을 적용 합니다.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. 특성의 인수는 형식 변환기 구현을 참조합니다.The argument of the attribute references your type converter implementation. 형식 변환기를 사용 하 여 특성 또는 XAML 태그에 대 한 초기화 텍스트에 사용 되는 문자열에서 값을 허용할 수 하 고 해당 문자열에 의도 된 대상 형식으로 변환 해야 합니다.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. 자세한 내용은 typeconverter 및 XAML을 참조 하세요.For more information, see TypeConverters and XAML.

형식의 모든 값에 적용 하는 대신 XAML에 대 한 형식 변환기 동작 특정 속성에 설정할 수도 있습니다.Rather than applying to all values of a type, a type converter behavior for XAML can also be established on a specific property. 이 경우 속성 정의 (특정 getset 정의가 아닌 외부 정의)에 TypeConverterAttribute을 적용 합니다.In this case, you apply TypeConverterAttribute to the property definition (the outer definition, not the specific get and set definitions).

사용자 지정 연결 가능 멤버의 XAML 사용에 대 한 형식 변환기 동작은 XAML 사용을 지 원하는 get 메서드 접근자에 TypeConverterAttribute를 적용 하 여 할당할 수 있습니다.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. 자세한 내용은 연결된 속성 개요를 참조하세요.For more information, see Attached Properties Overview.

복잡 한 XAML serialization의 경우 개체 런타임에서 상태를 추가 해야 하는 사용자 지정 형식 또는 사용자 지정 멤버에 형식 변환기 및 특성 외에도 값 직렬 변환기를 모두 지원 클래스를 정의 하는 것이 좋습니다.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. 자세한 내용은 ValueSerializer를 참조하세요.For more information, see ValueSerializer.

생성자

TypeConverterAttribute()

기본 형식 변환기를 사용하여 TypeConverterAttribute 클래스의 새 인스턴스를 초기화합니다. 기본 형식 변환기는 빈 문자열("")입니다.Initializes a new instance of the TypeConverterAttribute class with the default type converter, which is an empty string ("").

TypeConverterAttribute(String)

지정된 형식 이름을 이 특성이 바인딩되는 개체의 데이터 변환기로 사용하여 TypeConverterAttribute 클래스의 새 인스턴스를 초기화합니다.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 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the TypeConverterAttribute class, using the specified type as the data converter for the object this attribute is bound to.

필드

Default

이 특성이 바인딩되는 개체의 변환기로 사용할 형식을 지정합니다.Specifies the type to use as a converter for the object this attribute is bound to.

속성

ConverterTypeName

이 특성이 바인딩되는 개체의 변환기로 사용할 Type의 정규화된 형식 이름을 가져옵니다.Gets the fully qualified type name of the Type to use as a converter for the object this attribute is bound to.

TypeId

파생 클래스에서 구현될 때 이 Attribute의 고유 식별자를 가져옵니다.When implemented in a derived class, gets a unique identifier for this Attribute.

(다음에서 상속됨 Attribute)

메서드

Equals(Object)

주어진 개체의 값이 현재 TypeConverterAttribute와 같은지 여부를 반환합니다.Returns whether the value of the given object is equal to the current TypeConverterAttribute.

GetHashCode()

이 인스턴스의 해시 코드를 반환합니다.Returns the hash code for this instance.

GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
IsDefaultAttribute()

파생 클래스에서 재정의된 경우 이 인스턴스 값이 파생 클래스에 대한 기본값인지 여부를 표시합니다.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(다음에서 상속됨 Attribute)
Match(Object)

파생된 클래스에서 재정의할 경우,이 인스턴스가 지정된 된 개체와 같은지 여부를 나타내는 값을 반환 합니다.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(다음에서 상속됨 Attribute)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 string을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

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

이름 집합을 해당하는 디스패치 식별자 집합에 매핑합니다.Maps a set of names to a corresponding set of dispatch identifiers.

(다음에서 상속됨 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

인터페이스의 형식 정보를 가져오는 데 사용할 수 있는 개체의 형식 정보를 검색합니다.Retrieves the type information for an object, which can be used to get the type information for an interface.

(다음에서 상속됨 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

개체에서 제공하는 형식 정보 인터페이스의 수를 검색합니다(0 또는 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(다음에서 상속됨 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

개체에서 노출하는 메서드와 속성에 대한 액세스를 제공합니다.Provides access to properties and methods exposed by an object.

(다음에서 상속됨 Attribute)

적용 대상

추가 정보