TypeDescriptor クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
属性、プロパティ、イベントなど、コンポーネントの特性に関する情報を提供します。 このクラスは継承できません。
public ref class TypeDescriptor sealed
public sealed class TypeDescriptor
type TypeDescriptor = class
Public NotInheritable Class TypeDescriptor
- 継承
-
TypeDescriptor
注釈
.NET Frameworkには、型のメタデータにアクセスする 2 つの方法 (名前空間でSystem.Reflection提供されるリフレクション API と クラス) がTypeDescriptor用意されています。 リフレクションは、ルート Object クラスの メソッドで基礎が確立されているため、すべての型でGetType使用できる一般的なメカニズムです。 型に対して返される情報は拡張できません。つまり、ターゲット型のコンパイル後に変更することはできません。 詳細については、「 リフレクション」のトピックを参照してください。
これに対し、 TypeDescriptor はコンポーネントの拡張可能な検査メカニズムです。インターフェイスを IComponent 実装するクラスです。 リフレクションとは異なり、メソッドの検査は行われません。 TypeDescriptor は、ターゲット コンポーネントの を介して使用できる複数の Siteサービスによって動的に拡張できます。 次の表に、これらのサービスを示します。
サービス名 | 説明 |
---|---|
IExtenderProvider | コンポーネントに追加のプロパティを提供するために、 などの ToolTip別のクラスを有効にします。 |
ITypeDescriptorFilterService | コンポーネントによって公開される標準メタデータを別のオブジェクトが変更できるようにします。 |
ICustomTypeDescriptor | クラスが独自のメタデータを完全かつ動的に指定できるようにし、 の TypeDescriptor標準的な検査メカニズムを置き換えます。 |
によって TypeDescriptor 提供される拡張性により、コンポーネントのデザイン時表現は実際の実行時表現とは異なるため、 TypeDescriptor デザイン時インフラストラクチャの構築に役立ちます。
内のすべてのメソッド TypeDescriptor は です static
。 このクラスのインスタンスを作成することはできません。また、このクラスを継承することはできません。
プロパティとイベント値は、コンポーネント クラスで指定するか、デザイン時に変更する 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) |
イベント
Refreshed |
コンポーネントのキャッシュが消去されると発生します。 |
適用対象
こちらもご覧ください
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示