IDesignerFilter インターフェイス

定義

コンポーネント デザイナーがデザイン時環境に対して公開できるプロパティ、属性、イベントの各記述子を格納する TypeDescriptor のディクショナリにデザイナーがアクセスし、フィルター処理を実行できるようにするインターフェイスを提供します。Provides an interface that enables a designer to access and filter the dictionaries of a TypeDescriptor that stores the property, attribute, and event descriptors that a component designer can expose to the design-time environment.

public interface class IDesignerFilter
public interface IDesignerFilter
type IDesignerFilter = interface
Public Interface IDesignerFilter
派生

次の例は、デザイン時PreFilterPropertiesにデザイナーのコントロールが選択されたときに、デザイナーのプロパティをプロパティウィンドウに追加するのオーバーライドを示しています。The following example demonstrates an override of PreFilterProperties that adds a property of the designer to the Properties window when the designer's control is selected at design time. インターフェイスIDesignerFilterを使用する完全ControlDesignerなデザイナーの例については、クラスの例を参照してください。See the example for the ControlDesigner class for a complete designer example that uses the IDesignerFilter interface.

protected:
   [ReflectionPermission(SecurityAction::Demand, Flags=ReflectionPermissionFlag::MemberAccess)]
   virtual void PreFilterProperties( System::Collections::IDictionary^ properties ) override
   {
      properties->Add( "OutlineColor", TypeDescriptor::CreateProperty( TestControlDesigner::typeid, "OutlineColor", System::Drawing::Color::typeid, nullptr ) );
   }
// Adds a property to this designer's control at design time 
// that indicates the outline color to use. 
// The DesignOnlyAttribute ensures that the OutlineColor
// property is not serialized by the designer.
protected override void PreFilterProperties(System.Collections.IDictionary properties)
{
    PropertyDescriptor pd = TypeDescriptor.CreateProperty(
        typeof(ExampleControlDesigner), 
        "OutlineColor",
        typeof(System.Drawing.Color),
        new Attribute[] { new DesignOnlyAttribute(true) });

    properties.Add("OutlineColor", pd);
}
' Adds a property to this designer's control at design time 
' that indicates the outline color to use.
' The DesignOnlyAttribute ensures that the OutlineColor
' property is not serialized by the designer.
Protected Overrides Sub PreFilterProperties(ByVal properties As System.Collections.IDictionary)
    Dim pd As PropertyDescriptor = TypeDescriptor.CreateProperty( _
    GetType(ExampleControlDesigner), _
    "OutlineColor", _
    GetType(System.Drawing.Color), _
    New Attribute() {New DesignOnlyAttribute(True)})

    properties.Add("OutlineColor", pd)
End Sub

注釈

IDesignerFilterデザイナーが、関連するコンポーネントがをTypeDescriptor通じて公開するプロパティ、属性、およびイベント記述子のセットをフィルター処理できるようにします。IDesignerFilter enables a designer to filter the set of property, attribute, and event descriptors that its associated component exposes through a TypeDescriptor. 名前がでPre始まるこのインターフェイスのメソッドは、名前がでPost始まるメソッドの直前に呼び出されます。The methods of this interface whose names begin with Pre are called immediately before the methods whose names begin with Post.

属性、イベント、またはプロパティ記述子を追加する場合は、、 PreFilterAttributes PreFilterEvents、またはPreFilterPropertiesメソッドを使用します。If you want to add attribute, event, or property descriptors, use a PreFilterAttributes, PreFilterEvents, or PreFilterProperties method.

属性、イベント、またはプロパティの記述子を変更または削除する場合はPostFilterAttributesPostFilterEvents、、 PostFilterPropertiesまたはメソッドを使用します。If you want to change or remove attribute, event, or property descriptors, use a PostFilterAttributes, PostFilterEvents, or PostFilterProperties method.

メソッド

PostFilterAttributes(IDictionary)

派生クラスでオーバーライドされた場合、デザイナーが TypeDescriptor を通じて公開する一連の属性の項目を変更または削除できるようにします。When overridden in a derived class, allows a designer to change or remove items from the set of attributes that it exposes through a TypeDescriptor.

PostFilterEvents(IDictionary)

派生クラスでオーバーライドされた場合、デザイナーが TypeDescriptor を通じて公開する一連のイベントの項目を変更または削除できるようになります。When overridden in a derived class, allows a designer to change or remove items from the set of events that it exposes through a TypeDescriptor.

PostFilterProperties(IDictionary)

派生クラスでオーバーライドされた場合、デザイナーが TypeDescriptor を通じて公開する一連のプロパティの項目を変更または削除できるようになります。When overridden in a derived class, allows a designer to change or remove items from the set of properties that it exposes through a TypeDescriptor.

PreFilterAttributes(IDictionary)

派生クラスでオーバーライドされた場合、デザイナーが TypeDescriptor を通じて公開する一連の属性に項目を追加できるようにします。When overridden in a derived class, allows a designer to add items to the set of attributes that it exposes through a TypeDescriptor.

PreFilterEvents(IDictionary)

派生クラスでオーバーライドされた場合、デザイナーが TypeDescriptor を通じて公開する一連のイベントに項目を追加できるようにします。When overridden in a derived class, allows a designer to add items to the set of events that it exposes through a TypeDescriptor.

PreFilterProperties(IDictionary)

派生クラスでオーバーライドされた場合、デザイナーが TypeDescriptor を通じて公開する一連のプロパティに項目を追加できるようにします。When overridden in a derived class, allows a designer to add items to the set of properties that it exposes through a TypeDescriptor.

適用対象

こちらもご覧ください