IDesignerFilter Interfaz

Definición

Proporciona una interfaz que permite que un diseñador acceda y filtre los diccionarios de un TypeDescriptor que almacena la propiedad, el atributo y los descriptores de eventos que un diseñador de componentes puede exponer al entorno en tiempo de diseño.

public interface class IDesignerFilter
public interface IDesignerFilter
type IDesignerFilter = interface
Public Interface IDesignerFilter
Derivado

Ejemplos

En el ejemplo siguiente se muestra una invalidación de PreFilterProperties que agrega una propiedad del diseñador al ventana Propiedades cuando se selecciona el control del diseñador en tiempo de diseño. Vea el ejemplo de la ControlDesigner clase para ver un ejemplo completo del diseñador que usa la IDesignerFilter interfaz .

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

Comentarios

IDesignerFilterpermite que un diseñador filtre el conjunto de descriptores de propiedades, atributos y eventos que expone su componente asociado a través de .TypeDescriptor Los métodos de esta interfaz cuyos nombres comienzan por Pre se llaman inmediatamente antes de los métodos cuyos nombres comienzan por Post.

Si desea agregar descriptores de atributos, eventos o propiedades, use un PreFilterAttributesmétodo , PreFilterEventso PreFilterProperties .

Si desea cambiar o quitar los descriptores de atributo, evento o propiedad, use un PostFilterAttributesmétodo , PostFilterEventso PostFilterProperties .

Métodos

Nombre Description
PostFilterAttributes(IDictionary)

Cuando se reemplaza en una clase derivada, permite que un diseñador cambie o quite elementos del conjunto de atributos que expone a través de .TypeDescriptor

PostFilterEvents(IDictionary)

Cuando se reemplaza en una clase derivada, permite que un diseñador cambie o quite elementos del conjunto de eventos que expone a través de .TypeDescriptor

PostFilterProperties(IDictionary)

Cuando se reemplaza en una clase derivada, permite que un diseñador cambie o quite elementos del conjunto de propiedades que expone a través de .TypeDescriptor

PreFilterAttributes(IDictionary)

Cuando se reemplaza en una clase derivada, permite que un diseñador agregue elementos al conjunto de atributos que expone a través de .TypeDescriptor

PreFilterEvents(IDictionary)

Cuando se reemplaza en una clase derivada, permite que un diseñador agregue elementos al conjunto de eventos que expone a través de .TypeDescriptor

PreFilterProperties(IDictionary)

Cuando se reemplaza en una clase derivada, permite que un diseñador agregue elementos al conjunto de propiedades que expone a través de .TypeDescriptor

Se aplica a

Consulte también