TypeDescriptor クラス

定義

属性、プロパティ、イベントなど、コンポーネントの特性に関する情報を提供します。 このクラスは継承できません。

public ref class TypeDescriptor sealed
public sealed class TypeDescriptor
type TypeDescriptor = class
Public NotInheritable Class TypeDescriptor
継承
TypeDescriptor

注釈

.NET Frameworkには、名前空間で提供されるリフレクション API とクラスの 2 つの方法で、型のSystem.ReflectionメタデータにTypeDescriptorアクセスできます。 リフレクションは、ルート Object クラスのメソッドで基礎が確立されているため、すべての型でGetType使用できる一般的なメカニズムです。 型に対して返される情報は拡張できません。つまり、ターゲット型のコンパイル後に変更することはできません。 詳細については、「 リフレクション」のトピックを参照してください。

これに対し、 TypeDescriptor コンポーネントの拡張可能な検査メカニズムです。インターフェイスを IComponent 実装するクラスです。 リフレクションとは異なり、メソッドの検査は行われません。 TypeDescriptor は、ターゲット コンポーネントを介して利用できる複数の Siteサービスによって動的に拡張できます。 次の表に、これらのサービスを示します。

サービス名 説明
IExtenderProvider 別のクラス (たとえば ToolTip、コンポーネントに追加のプロパティを提供する) を有効にします。
ITypeDescriptorFilterService 別のオブジェクトが、コンポーネントによって公開される標準メタデータを変更できるようにします。
ICustomTypeDescriptor クラスが独自のメタデータを完全かつ動的に指定し、標準の TypeDescriptor検査メカニズムを置き換えることを可能にします。

提供される拡張性により TypeDescriptor 、コンポーネントのデザイン時表現が実際の実行時表現と異なることができます TypeDescriptor 。これは、デザイン時インフラストラクチャの構築に役立ちます。

内のすべてのメソッドは次のとおりですTypeDescriptorstatic。 このクラスのインスタンスは作成できず、このクラスは継承できません。

プロパティとイベント値は、コンポーネント クラスで指定するか、デザイン時に変更する 2 つの異なる方法で設定できます。 これらの値は 2 つの方法で設定できるため、オーバーロードされたメソッド TypeDescriptor は、クラス型またはオブジェクト インスタンスという 2 種類のパラメーターを受け取ります。

情報にアクセス TypeDescriptor し、オブジェクトのインスタンスがある場合は、コンポーネントを呼び出すメソッドを使用します。 オブジェクトのインスタンスがない場合にのみ、クラス型を呼び出すメソッドを使用します。

プロパティとイベントは、速度のためにキャッシュされます TypeDescriptor 。 通常、オブジェクトの有効期間は一定です。 ただし、エクステンダー プロバイダーとデザイナーは、オブジェクトのプロパティのセットを変更できます。 この場合は、キャッシュを Refresh 更新するためにメソッドを呼び出す必要があります。

プロパティ

ComNativeDescriptorHandler
互換性のために残されています。
互換性のために残されています。
互換性のために残されています。
互換性のために残されています。

ターゲット コンポーネントの Component Object Model (COM) 型情報のプロバイダーを取得または設定します。

ComObjectType

対象となるコンポーネントによって表されるコンポーネント オブジェクト モデル (COM) の型を取得します。

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)

2 つのオブジェクトの間のプライマリとセカンダリの関連付けを作成します。

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)

指定した型の型コンバーターを返します。

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[])

指定された属性配列をフィルターとして使用して、指定されたコンポーネント型のイベント コレクションを返します。

GetFullComponentName(Object)

コンポーネントの完全修飾名を返します。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetProperties(Object)

指定されたコンポーネントのプロパティのコレクションを返します。

GetProperties(Object, Attribute[])

指定された属性配列をフィルターとして使用して、指定されたコンポーネントのプロパティのコレクションを返します。

GetProperties(Object, Attribute[], Boolean)

指定された属性配列をフィルターとして使用し、カスタム型記述子を使用して、指定されたコンポーネントのプロパティのコレクションを返します。

GetProperties(Object, Boolean)

既定の型記述子を使用して、指定されたコンポーネントのプロパティのコレクションを返します。

GetProperties(Type)

指定された型のコンポーネントのプロパティ コレクションを返します。

GetProperties(Type, Attribute[])

指定された属性配列をフィルターとして使用して、指定されたコンポーネント型のプロパティのコレクションを返します。

GetProvider(Object)

指定されたコンポーネントの型説明プロバイダーを返します。

GetProvider(Type)

指定した型の型説明プロバイダーを返します。

GetReflectionType(Object)

特定のオブジェクトについて、リフレクションを実行するために使用できる Type を返します。

GetReflectionType(Type)

クラス型で指定された、リフレクションを実行するために使用できる Type を返します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
Refresh(Assembly)

指定されたアセンブリのプロパティとイベントをキャッシュからクリアします。

Refresh(Module)

指定されたモジュールのプロパティとイベントをキャッシュからクリアします。

Refresh(Object)

指定されたコンポーネントのプロパティとイベントをキャッシュからクリアします。

Refresh(Type)

コンポーネントの指定された型のプロパティとイベントをキャッシュからクリアします。

RemoveAssociation(Object, Object)

2 つのオブジェクトの間の関連付けを削除します。

RemoveAssociations(Object)

プライマリ オブジェクトのすべての関連付けを削除します。

RemoveProvider(TypeDescriptionProvider, Object)

指定したオブジェクトに関連付けられている、以前に追加された型説明プロバイダーを削除します。

RemoveProvider(TypeDescriptionProvider, Type)

指定した型に関連付けられている、以前に追加された型説明プロバイダーを削除します。

RemoveProviderTransparent(TypeDescriptionProvider, Object)

指定したオブジェクトに関連付けられている、以前に追加された型説明プロバイダーを削除します。

RemoveProviderTransparent(TypeDescriptionProvider, Type)

指定した型に関連付けられている、以前に追加された型説明プロバイダーを削除します。

SortDescriptorArray(IList)

記述子の名前を使用して、記述子を並べ替えます。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

events

Refreshed

コンポーネントのキャッシュが消去されると発生します。

適用対象

こちらもご覧ください