IDesignerFilter.PostFilterAttributes(IDictionary) メソッド

定義

派生クラスでオーバーライドされた場合、デザイナーが TypeDescriptor を通じて公開する一連の属性の項目を変更または削除できるようにします。

public:
 void PostFilterAttributes(System::Collections::IDictionary ^ attributes);
public void PostFilterAttributes (System.Collections.IDictionary attributes);
abstract member PostFilterAttributes : System.Collections.IDictionary -> unit
Public Sub PostFilterAttributes (attributes As IDictionary)

パラメーター

attributes
IDictionary

コンポーネントのクラスの Attribute オブジェクト。 属性のディクショナリ内でのキーは、属性の TypeId 値です。

注釈

このメソッドを使用すると、このインターフェイスを実装するデザイナーの関連コンポーネントで公開される属性のディクショナリ内の項目を変更または削除する方法が TypeDescriptor提供されます。

属性のディクショナリ内のキーは、属性の型 ID です。 オブジェクトは型 Attributeです。 このメソッドは、直後 PreFilterAttributesに呼び出されます。

属性の型 ID には、任意のオブジェクトを指定できます。 既定では、 Attribute そのプロパティの値としてその Type 値を TypeId 返します。 ディクショナリ内の属性と、属性が識別される既知TypeIdの属性との等価性を確認TypeIdしたり、属性オブジェクト自体を識別するために使用System.Reflectionしたりすることができます。

既存の属性または継承された属性と同じ TypeId 属性がコンポーネントに追加されると、新しい属性が古い属性に置き換えられます。 多くの属性では、同じ型の新しい属性によって、その型の以前の属性が置き換えられます。 ただし、一部の種類の属性は、属性を選択的に区別する a TypeId を返します。 たとえば、型に対して異なる種類の同時にアクティブなデザイナー (an や an IRootDesigner IDesignerなど) を提供するために、 DesignerAttribute クラスは属性と基本デザイナー型の両方を一意に識別する a を返 TypeId します。 DesignerAttributeコンストラクターを使用すると、特定の型に加えて、デザイナーの基本デザイナーの型を指定できDesignerAttribute、これを反映する a TypeId が返されます。 したがって、既存DesignerAttributeの基本デザイナーの型と同じ型の基本デザイナー型を持つ新しいDesignerAttribute属性を追加すると、古い属性が新しい属性に置き換えられます。

注意 (実装者)

パラメーターを使用して attributes アクセスできるディクショナリを直接フィルター処理することも、そのままにすることもできます。 このメソッドをオーバーライドする場合は、独自のフィルター処理を実行した後に基本実装を呼び出します。

適用対象

こちらもご覧ください