IDesignerFilter Interfaz

Definición

Proporciona una interfaz que habilita a un diseñador para tener acceso y filtrar los diccionarios de un objeto TypeDescriptor que almacena los descriptores de propiedad, atributo y evento que un diseñador de componentes puede exponer en el 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 obtener 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 a un diseñador filtrar el conjunto de descriptores de propiedades, atributos y eventos que su componente asociado expone 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 atributo, evento o propiedad, 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

PostFilterAttributes(IDictionary)

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

PostFilterEvents(IDictionary)

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

PostFilterProperties(IDictionary)

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

PreFilterAttributes(IDictionary)

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

PreFilterEvents(IDictionary)

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

PreFilterProperties(IDictionary)

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

Se aplica a

Consulte también