TypeDescriptorとは? わかりやすく解説

TypeDescriptor イベント


TypeDescriptor クラス

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

名前空間: System.ComponentModel
アセンブリ: System (system.dll 内)
構文構文

Public NotInheritable Class
 TypeDescriptor
Dim instance As TypeDescriptor
public sealed class TypeDescriptor
public ref class TypeDescriptor sealed
public final class TypeDescriptor
public final class TypeDescriptor
解説解説

.NET Framework では、System.Reflection 名前空間で提供されるリフレクション API と TypeDescriptor クラスという 2 とおりの方法で型のメタデータにアクセスできます。リフレクションの基盤は、ルート クラス Object の GetType メソッドで確立されるため、リフレクションはすべての型で使用できる汎用機構です。リフレクションによって返される型に関する情報は、対象の型をコンパイルした後に変更できないという点で拡張性がありません。詳細については、リフレクション のトピックを参照してください。

これに対して、TypeDescriptor はコンポーネントに対して拡張性のある検査機構です。これらのクラスは、IComponent インターフェイスを実装しています。リフレクションとは異なり、このクラスはメソッドに関する検査は行いません。TypeDescriptor は、対象のコンポーネントの Site を通じて利用できる複数のサービスによって動的に拡張できます。これらのサービスを次の表に示します。

サービス名

説明

IExtenderProvider

ToolTip などの別のクラスがコンポーネントに追加のプロパティを提供できるようにします。

ITypeDescriptorFilterService

別のオブジェクトがコンポーネントによって公開される標準のメタデータを変更できるようにします。

ICustomTypeDescriptor

TypeDescriptor の標準の検査機構を置き換え、クラスが独自のメタデータを完全かつ動的に指定できるようにします。

TypeDescriptor によって提供される機能拡張を使用すると、コンポーネントのデザイン時の表現を実行時の実際の表現と区別できるため、TypeDescriptor は、デザイン時のインフラストラクチャを構築する際に役立ちます。

TypeDescriptor のすべてのメソッドは static です。このクラスのインスタンスは作成できないため、このクラスを継承することはできません。

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

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

処理速度向上のため、プロパティとイベントは TypeDescriptor によってキャッシュされます。通常、これらはオブジェクトの有効期間を通じて一定です。ただし、拡張プロバイダやデザイナは、オブジェクトに関する一連のプロパティを変更できます。その場合、Refresh メソッドを呼び出してキャッシュを更新する必要があります。

継承階層継承階層
System.Object
  System.ComponentModel.TypeDescriptor
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

TypeDescriptor プロパティ


TypeDescriptor メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド AddAttributes オーバーロードされます。 対象のコンポーネントにクラス レベルの属性を追加します。
パブリック メソッド AddEditorTable 指定したエディタの基本型のエディタ テーブルを追加します。
パブリック メソッド AddProvider オーバーロードされます。 この型記述子のプロバイダのリストに型の記述プロバイダを追加します。
パブリック メソッド CreateAssociation 2 つのオブジェクト間にプライマリとセカンダリの関連付けを作成します。
パブリック メソッド CreateDesigner 指定したコンポーネントに関連付けられているデザイナのインスタンスと、指定したデザイナの型のインスタンスを作成します。
パブリック メソッド CreateEvent オーバーロードされます。 既存のイベント記述子と同一の新しいイベント記述子を作成します。
パブリック メソッド CreateInstance 別のデータ型の代わりに使用できるオブジェクトを作成します。
パブリック メソッド CreateProperty オーバーロードされます。 コンポーネントの既存のプロパティの新しいプロパティ記述子を作成します。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド GetAssociation 指定したプライマリ オブジェクトに関連付けられた型のインスタンスを返します。
パブリック メソッド GetAttributes オーバーロードされます。 コンポーネントまたは型の属性のコレクションを返します。
パブリック メソッド GetClassName オーバーロードされます。 指定したコンポーネントのクラスの名前を返します。
パブリック メソッド GetComponentName オーバーロードされます。 指定したコンポーネントの名前を返します。
パブリック メソッド GetConverter オーバーロードされます。 コンポーネントまたは型の型コンバータを返します。
パブリック メソッド GetDefaultEvent オーバーロードされます。 コンポーネントまたは型の既定のイベントを返します。
パブリック メソッド GetDefaultProperty オーバーロードされます。 コンポーネントの既定のプロパティを返します。
パブリック メソッド GetEditor オーバーロードされます。 指定した基本型のエディタを返します。
パブリック メソッド GetEvents オーバーロードされます。 コンポーネントまたは型のイベントのコレクションを返します。
パブリック メソッド GetFullComponentName コンポーネントの完全修飾名を返します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetProperties オーバーロードされます。 コンポーネントまたは型のプロパティのコレクションを返します。
パブリック メソッド GetProvider オーバーロードされます。 コンポーネントまたは型の型記述プロバイダを返します。
パブリック メソッド GetReflectionType オーバーロードされます。 リフレクションの実行に使用できる Type を返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド Refresh オーバーロードされます。 プロパティとイベントをキャッシュから消去します。
パブリック メソッド RemoveAssociation 2 つのオブジェクト間の関連付けを削除します。
パブリック メソッド RemoveAssociations プライマリ オブジェクトのすべての関連付けを削除します。
パブリック メソッド RemoveProvider オーバーロードされます。 以前に追加した型の記述プロバイダを削除します。
パブリック メソッド SortDescriptorArray 記述子を名前で並べ替えます。
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

TypeDescriptor メンバ

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

TypeDescriptor データ型で公開されるメンバを以下の表に示します。


パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド AddAttributes オーバーロードされます。 対象のコンポーネントにクラス レベルの属性を追加します。
パブリック メソッド AddEditorTable 指定したエディタの基本型のエディタ テーブルを追加します。
パブリック メソッド AddProvider オーバーロードされます。 この型記述子のプロバイダのリストに型の記述プロバイダを追加します。
パブリック メソッド CreateAssociation 2 つのオブジェクト間にプライマリとセカンダリの関連付けを作成します。
パブリック メソッド CreateDesigner 指定したコンポーネントに関連付けられているデザイナのインスタンスと、指定したデザイナの型のインスタンスを作成します。
パブリック メソッド CreateEvent オーバーロードされます。 既存のイベント記述子と同一の新しいイベント記述子を作成します。
パブリック メソッド CreateInstance 別のデータ型の代わりに使用できるオブジェクトを作成します。
パブリック メソッド CreateProperty オーバーロードされます。 コンポーネントの既存のプロパティの新しいプロパティ記述子を作成します。
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド GetAssociation 指定したプライマリ オブジェクトに関連付けられた型のインスタンスを返します。
パブリック メソッド GetAttributes オーバーロードされます。 コンポーネントまたは型の属性のコレクションを返します。
パブリック メソッド GetClassName オーバーロードされます。 指定したコンポーネントのクラスの名前を返します。
パブリック メソッド GetComponentName オーバーロードされます。 指定したコンポーネントの名前を返します。
パブリック メソッド GetConverter オーバーロードされます。 コンポーネントまたは型の型コンバータを返します。
パブリック メソッド GetDefaultEvent オーバーロードされます。 コンポーネントまたは型の既定のイベントを返します。
パブリック メソッド GetDefaultProperty オーバーロードされます。 コンポーネントの既定のプロパティを返します。
パブリック メソッド GetEditor オーバーロードされます。 指定した基本型のエディタを返します。
パブリック メソッド GetEvents オーバーロードされます。 コンポーネントまたは型のイベントのコレクションを返します。
パブリック メソッド GetFullComponentName コンポーネントの完全修飾名を返します。
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetProperties オーバーロードされます。 コンポーネントまたは型のプロパティのコレクションを返します。
パブリック メソッド GetProvider オーバーロードされます。 コンポーネントまたは型の型記述プロバイダを返します。
パブリック メソッド GetReflectionType オーバーロードされます。 リフレクションの実行に使用できる Type を返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド Refresh オーバーロードされます。 プロパティとイベントをキャッシュから消去します。
パブリック メソッド RemoveAssociation 2 つのオブジェクト間の関連付けを削除します。
パブリック メソッド RemoveAssociations プライマリ オブジェクトのすべての関連付けを削除します。
パブリック メソッド RemoveProvider オーバーロードされます。 以前に追加した型の記述プロバイダを削除します。
パブリック メソッド SortDescriptorArray 記述子を名前で並べ替えます。
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
パブリック イベントパブリック イベント
参照参照



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「TypeDescriptor」の関連用語

TypeDescriptorのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



TypeDescriptorのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS