IDesignerFilter Interfaccia

Definizione

Fornisce un'interfaccia che consente a una finestra di progettazione di accedere e filtrare i dizionari di un TypeDescriptor oggetto che archivia i descrittori di proprietà, attributi ed eventi che una finestra di progettazione dei componenti può esporre all'ambiente in fase di progettazione.

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

Esempio

Nell'esempio seguente viene illustrato un override di PreFilterProperties che aggiunge una proprietà della finestra di progettazione al Finestra Proprietà quando il controllo della finestra di progettazione viene selezionato in fase di progettazione. Vedere l'esempio per la ControlDesigner classe per un esempio di finestra di progettazione completo che usa l'interfaccia IDesignerFilter .

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

Commenti

IDesignerFilter consente a una finestra di progettazione di filtrare il set di descrittori di proprietà, attributi ed eventi esposti dal componente associato tramite un oggetto TypeDescriptor. I metodi di questa interfaccia i cui nomi iniziano con Pre vengono chiamati immediatamente prima dei metodi i cui nomi iniziano con Post.

Se si desidera aggiungere descrittori di attributi, eventi o proprietà, usare un PreFilterAttributesmetodo , PreFilterEventso PreFilterProperties .

Se si desidera modificare o rimuovere descrittori di attributi, eventi o proprietà, usare un PostFilterAttributesmetodo , PostFilterEventso PostFilterProperties .

Metodi

Nome Descrizione
PostFilterAttributes(IDictionary)

Quando sottoposto a override in una classe derivata, consente a una finestra di progettazione di modificare o rimuovere elementi dal set di attributi esposti tramite un oggetto TypeDescriptor.

PostFilterEvents(IDictionary)

Quando sottoposto a override in una classe derivata, consente a una finestra di progettazione di modificare o rimuovere elementi dal set di eventi esposti tramite un oggetto TypeDescriptor.

PostFilterProperties(IDictionary)

Quando sottoposto a override in una classe derivata, consente a una finestra di progettazione di modificare o rimuovere elementi dal set di proprietà esposte tramite un oggetto TypeDescriptor.

PreFilterAttributes(IDictionary)

Quando sottoposto a override in una classe derivata, consente a una finestra di progettazione di aggiungere elementi al set di attributi esposti tramite un oggetto TypeDescriptor.

PreFilterEvents(IDictionary)

Quando sottoposto a override in una classe derivata, consente a una finestra di progettazione di aggiungere elementi al set di eventi esposti tramite un oggetto TypeDescriptor.

PreFilterProperties(IDictionary)

Quando sottoposto a override in una classe derivata, consente a una finestra di progettazione di aggiungere elementi al set di proprietà esposte tramite un oggetto TypeDescriptor.

Si applica a

Vedi anche