IDesignerFilter Interfejs

Definicja

Udostępnia interfejs, który umożliwia projektantowi dostęp do słowników, które przechowują właściwości, atrybuty i deskryptory TypeDescriptor zdarzeń, które projektant składników może uwidocznić w środowisku czasu projektowania.

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

Przykłady

W poniższym przykładzie pokazano przesłonięciaPreFilterProperties, które dodaje właściwość projektanta do okno Właściwości po wybraniu kontrolki projektanta w czasie projektowania. Zobacz przykład dla klasy, aby zapoznać się z ControlDesigner kompletnym przykładem projektanta, który używa interfejsu 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

Uwagi

IDesignerFilter umożliwia projektantowi filtrowanie zestawu deskryptorów właściwości, atrybutów i zdarzeń, które jego skojarzony składnik uwidacznia za pośrednictwem elementu TypeDescriptor. Metody tego interfejsu, których nazwy zaczynają się Pre od, są wywoływane bezpośrednio przed metodami, których nazwy zaczynają się od Post.

Jeśli chcesz dodać deskryptory atrybutów, zdarzeń lub właściwości, użyj PreFilterAttributesmetody , PreFilterEventslub PreFilterProperties .

Jeśli chcesz zmienić lub usunąć deskryptory atrybutów, zdarzeń lub właściwości, użyj PostFilterAttributesmetody , PostFilterEventslub PostFilterProperties .

Metody

PostFilterAttributes(IDictionary)

Po przesłonięciu w klasie pochodnej projektant może zmienić lub usunąć elementy z zestawu atrybutów, które uwidacznia za pośrednictwem klasy TypeDescriptor.

PostFilterEvents(IDictionary)

Po przesłonięciu w klasie pochodnej projektant może zmienić lub usunąć elementy z zestawu zdarzeń, które uwidacznia za pośrednictwem klasy TypeDescriptor.

PostFilterProperties(IDictionary)

W przypadku zastąpienia w klasie pochodnej umożliwia projektantowi zmianę lub usunięcie elementów z zestawu właściwości, które uwidacznia za pośrednictwem elementu TypeDescriptor.

PreFilterAttributes(IDictionary)

W przypadku zastąpienia w klasie pochodnej umożliwia projektantowi dodawanie elementów do zestawu atrybutów, które uwidacznia za pośrednictwem klasy TypeDescriptor.

PreFilterEvents(IDictionary)

W przypadku zastąpienia w klasie pochodnej umożliwia projektantowi dodawanie elementów do zestawu zdarzeń, które uwidacznia za pośrednictwem klasy TypeDescriptor.

PreFilterProperties(IDictionary)

Gdy zastąpisz klasę pochodną, projektant może dodać elementy do zestawu właściwości, które uwidacznia za pośrednictwem klasy TypeDescriptor.

Dotyczy

Zobacz też