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.

Если необходимо изменить или удалить дескрипторы атрибутов, событий или свойств, используйте метод PostFilterAttributes, PostFilterEventsили 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.

Применяется к

Дополнительно