다음을 통해 공유


TypeDescriptor 클래스

정의

특성, 속성 및 이벤트와 같은 구성 요소의 특성에 대한 정보를 제공합니다. 이 클래스는 상속할 수 없습니다.

public ref class TypeDescriptor sealed
public sealed class TypeDescriptor
type TypeDescriptor = class
Public NotInheritable Class TypeDescriptor
상속
TypeDescriptor

설명

.NET Framework는 형식의 메타데이터에 액세스하는 두 가지 방법, 즉 System.Reflection 네임스페이스에 제공된 리플렉션 API와 TypeDescriptor 클래스를 제공합니다. 리플렉션은 루트 Object 클래스의 GetType 메서드에 기초가 설정되기 때문에 모든 형식에서 사용할 수 있는 일반적인 메커니즘입니다. 대상 형식을 컴파일한 후에는 수정할 수 없으므로 형식에 대해 반환하는 정보는 확장할 수 없습니다. 자세한 내용은 리플렉션항목을 참조하세요.

반면, TypeDescriptor 구성 요소에 대한 확장 가능한 검사 메커니즘인 IComponent 인터페이스를 구현하는 클래스입니다. 리플렉션과 달리 메서드는 검사하지 않습니다. TypeDescriptor 대상 구성 요소의 Site통해 사용할 수 있는 여러 서비스에서 동적으로 확장할 수 있습니다. 다음 표에서는 이러한 서비스를 보여 줍니다.

서비스 이름 묘사
IExtenderProvider ToolTip같은 다른 클래스가 구성 요소에 추가 속성을 제공할 수 있도록 합니다.
ITypeDescriptorFilterService 다른 개체가 구성 요소에 의해 노출되는 표준 메타데이터를 수정할 수 있도록 합니다.
ICustomTypeDescriptor 클래스가 자체 메타데이터를 완전하고 동적으로 지정하여 TypeDescriptor표준 검사 메커니즘을 대체합니다.

TypeDescriptor 제공하는 확장성을 사용하면 구성 요소의 디자인 타임 표현이 실제 런타임 표현과 다를 수 있으므로 디자인 타임 인프라를 빌드하는 데 TypeDescriptor 유용합니다.

TypeDescriptor 모든 메서드는 static. 이 클래스의 인스턴스를 만들 수 없으며 이 클래스를 상속할 수 없습니다.

속성 및 이벤트 값은 구성 요소 클래스에서 지정하거나 디자인 타임에 변경하는 두 가지 방법으로 설정할 수 있습니다. 이러한 값을 두 가지 방법으로 설정할 수 있으므로 오버로드된 TypeDescriptor 메서드는 클래스 형식 또는 개체 인스턴스의 두 가지 매개 변수 형식을 사용합니다.

TypeDescriptor 정보에 액세스하고 개체의 인스턴스가 있는 경우 구성 요소를 호출하는 메서드를 사용합니다. 개체의 인스턴스가 없는 경우에만 클래스 형식을 호출하는 메서드를 사용합니다.

속성 및 이벤트는 속도를 위해 TypeDescriptor 의해 캐시됩니다. 일반적으로 개체의 수명 동안 상수입니다. 그러나 extender 공급자와 디자이너는 개체의 속성 집합을 변경할 수 있습니다. 이 경우 캐시를 업데이트하려면 Refresh 메서드를 호출해야 합니다.

속성

ComNativeDescriptorHandler
사용되지 않음.
사용되지 않음.
사용되지 않음.
사용되지 않음.

대상 구성 요소에 대한 COM(구성 요소 개체 모델) 형식 정보에 대한 공급자를 가져오거나 설정합니다.

ComObjectType

대상 구성 요소가 나타내는 COM(Component Object Model) 개체의 형식을 가져옵니다.

InterfaceType

모든 인터페이스 형식에 대한 형식 설명 공급자를 나타내는 형식을 가져옵니다.

메서드

AddAttributes(Object, Attribute[])

대상 구성 요소 인스턴스에 클래스 수준 특성을 추가합니다.

AddAttributes(Type, Attribute[])

대상 구성 요소 형식에 클래스 수준 특성을 추가합니다.

AddEditorTable(Type, Hashtable)

지정된 편집기 기본 형식에 대한 편집기 테이블을 추가합니다.

AddProvider(TypeDescriptionProvider, Object)

구성 요소의 단일 인스턴스에 대한 형식 설명 공급자를 추가합니다.

AddProvider(TypeDescriptionProvider, Type)

구성 요소 클래스에 대한 형식 설명 공급자를 추가합니다.

AddProviderTransparent(TypeDescriptionProvider, Object)

구성 요소의 단일 인스턴스에 대한 형식 설명 공급자를 추가합니다.

AddProviderTransparent(TypeDescriptionProvider, Type)

구성 요소 클래스에 대한 형식 설명 공급자를 추가합니다.

CreateAssociation(Object, Object)

두 개체 간의 기본-보조 연결을 만듭니다.

CreateDesigner(IComponent, Type)

지정된 구성 요소 및 지정된 유형의 디자이너와 연결된 디자이너의 인스턴스를 만듭니다.

CreateEvent(Type, EventDescriptor, Attribute[])

기존 EventDescriptor전달한 경우 기존 이벤트 설명자와 동일한 새 이벤트 설명자를 만듭니다.

CreateEvent(Type, String, Type, Attribute[])

형식의 지정된 이벤트에서 설명자 정보를 동적으로 생성하여 기존 이벤트 설명자와 동일한 새 이벤트 설명자를 만듭니다.

CreateInstance(IServiceProvider, Type, Type[], Object[])

다른 데이터 형식을 대체할 수 있는 개체를 만듭니다.

CreateProperty(Type, PropertyDescriptor, Attribute[])

지정된 기존 PropertyDescriptor 및 특성 배열을 사용하여 기존 속성 설명자에서 새 속성 설명자를 만듭니다.

CreateProperty(Type, String, Type, Attribute[])

지정된 속성 이름, 형식 및 특성 배열을 사용하여 속성 설명자를 만들고 형식에 동적으로 바인딩합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
GetAssociation(Type, Object)

지정된 주 개체와 연결된 형식의 인스턴스를 반환합니다.

GetAttributes(Object)

지정된 구성 요소에 대한 특성 컬렉션을 반환합니다.

GetAttributes(Object, Boolean)

지정된 구성 요소에 대한 특성 컬렉션과 사용자 지정 형식 설명자가 생성되었음을 나타내는 부울을 반환합니다.

GetAttributes(Type)

지정된 구성 요소 형식에 대한 특성 컬렉션을 반환합니다.

GetClassName(Object)

기본 형식 설명자를 사용하여 지정된 구성 요소의 클래스 이름을 반환합니다.

GetClassName(Object, Boolean)

사용자 지정 형식 설명자를 사용하여 지정된 구성 요소에 대한 클래스의 이름을 반환합니다.

GetClassName(Type)

지정된 형식에 대한 클래스의 이름을 반환합니다.

GetComponentName(Object)

기본 형식 설명자를 사용하여 지정된 구성 요소의 이름을 반환합니다.

GetComponentName(Object, Boolean)

사용자 지정 형식 설명자를 사용하여 지정된 구성 요소의 이름을 반환합니다.

GetConverter(Object)

지정된 구성 요소의 형식에 대한 형식 변환기를 반환합니다.

GetConverter(Object, Boolean)

사용자 지정 형식 설명자를 사용하여 지정된 구성 요소의 형식에 대한 형식 변환기를 반환합니다.

GetConverter(Type)

지정된 형식에 대한 형식 변환기를 반환합니다.

GetConverterFromRegisteredType(Object)

지정된 구성 요소의 형식에 대한 형식 변환기를 가져옵니다.

GetConverterFromRegisteredType(Type)

지정된 등록된 형식에 대한 형식 변환기를 가져옵니다.

GetDefaultEvent(Object)

지정된 구성 요소에 대한 기본 이벤트를 반환합니다.

GetDefaultEvent(Object, Boolean)

사용자 지정 형식 설명자가 있는 구성 요소의 기본 이벤트를 반환합니다.

GetDefaultEvent(Type)

지정된 구성 요소 형식에 대한 기본 이벤트를 반환합니다.

GetDefaultProperty(Object)

지정된 구성 요소의 기본 속성을 반환합니다.

GetDefaultProperty(Object, Boolean)

사용자 지정 형식 설명자를 사용하여 지정된 구성 요소의 기본 속성을 반환합니다.

GetDefaultProperty(Type)

지정된 구성 요소 형식의 기본 속성을 반환합니다.

GetEditor(Object, Type)

지정된 구성 요소에 대해 지정된 기본 형식의 편집기를 가져옵니다.

GetEditor(Object, Type, Boolean)

지정된 기본 형식과 지정된 구성 요소에 대한 사용자 지정 형식 설명자가 있는 편집기를 반환합니다.

GetEditor(Type, Type)

지정된 형식에 대해 지정된 기본 형식의 편집기를 반환합니다.

GetEvents(Object)

지정된 구성 요소에 대한 이벤트 컬렉션을 반환합니다.

GetEvents(Object, Attribute[])

지정된 특성 배열을 필터로 사용하여 지정된 구성 요소에 대한 이벤트 컬렉션을 반환합니다.

GetEvents(Object, Attribute[], Boolean)

지정된 특성 배열을 필터로 사용하고 사용자 지정 형식 설명자를 사용하여 지정된 구성 요소에 대한 이벤트 컬렉션을 반환합니다.

GetEvents(Object, Boolean)

사용자 지정 형식 설명자를 사용하여 지정된 구성 요소에 대한 이벤트 컬렉션을 반환합니다.

GetEvents(Type)

지정된 구성 요소 형식에 대한 이벤트 컬렉션을 반환합니다.

GetEvents(Type, Attribute[])

지정된 특성 배열을 필터로 사용하여 지정된 구성 요소 형식에 대한 이벤트 컬렉션을 반환합니다.

GetEventsFromRegisteredType(Type)

지정된 구성 요소 형식에 대한 이벤트 컬렉션을 가져옵니다.

GetFullComponentName(Object)

구성 요소의 정규화된 이름을 반환합니다.

GetHashCode()

기본 해시 함수로 사용됩니다.

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

지정된 구성 요소에 대한 속성 컬렉션을 반환합니다.

GetProperties(Object, Attribute[])

지정된 특성 배열을 필터로 사용하여 지정된 구성 요소에 대한 속성 컬렉션을 반환합니다.

GetProperties(Object, Attribute[], Boolean)

지정된 특성 배열을 필터로 사용하고 사용자 지정 형식 설명자를 사용하여 지정된 구성 요소에 대한 속성 컬렉션을 반환합니다.

GetProperties(Object, Boolean)

기본 형식 설명자를 사용하여 지정된 구성 요소에 대한 속성 컬렉션을 반환합니다.

GetProperties(Type)

지정된 구성 요소 형식의 속성 컬렉션을 반환합니다.

GetProperties(Type, Attribute[])

지정된 특성 배열을 필터로 사용하여 지정된 구성 요소 형식의 속성 컬렉션을 반환합니다.

GetPropertiesFromRegisteredType(Object)

지정된 구성 요소에 대한 속성 컬렉션을 가져옵니다.

GetPropertiesFromRegisteredType(Type)

지정된 형식의 속성 컬렉션을 가져옵니다.

GetProvider(Object)

지정된 구성 요소에 대한 형식 설명 공급자를 반환합니다.

GetProvider(Type)

지정된 형식에 대한 형식 설명 공급자를 반환합니다.

GetReflectionType(Object)

개체가 지정된 경우 리플렉션을 수행하는 데 사용할 수 있는 Type 반환합니다.

GetReflectionType(Type)

클래스 형식이 지정된 경우 리플렉션을 수행하는 데 사용할 수 있는 Type 반환합니다.

GetType()

현재 인스턴스의 Type 가져옵니다.

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

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
Refresh(Assembly)

캐시에서 지정된 어셈블리의 속성과 이벤트를 지웁니다.

Refresh(Module)

캐시에서 지정된 모듈의 속성과 이벤트를 지웁니다.

Refresh(Object)

캐시에서 지정된 구성 요소의 속성과 이벤트를 지웁니다.

Refresh(Type)

캐시에서 지정된 유형의 구성 요소에 대한 속성과 이벤트를 지웁니다.

RegisterType<T>()

트리밍된 애플리케이션에서 리플렉션 기반 공급자가 사용할 수 있도록 형식을 등록합니다.

RemoveAssociation(Object, Object)

두 개체 간의 연결을 제거합니다.

RemoveAssociations(Object)

기본 개체에 대한 모든 연결을 제거합니다.

RemoveProvider(TypeDescriptionProvider, Object)

지정된 개체와 연결된 이전에 추가된 형식 설명 공급자를 제거합니다.

RemoveProvider(TypeDescriptionProvider, Type)

지정된 형식과 연결된 이전에 추가된 형식 설명 공급자를 제거합니다.

RemoveProviderTransparent(TypeDescriptionProvider, Object)

지정된 개체와 연결된 이전에 추가된 형식 설명 공급자를 제거합니다.

RemoveProviderTransparent(TypeDescriptionProvider, Type)

지정된 형식과 연결된 이전에 추가된 형식 설명 공급자를 제거합니다.

SortDescriptorArray(IList)

설명자의 이름을 사용하여 설명자를 정렬합니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

이벤트

Refreshed

구성 요소의 캐시를 지울 때 발생합니다.

적용 대상

추가 정보