IDesignerFilter 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供使设计器能够访问和筛选 TypeDescriptor 字典的接口,它存储组件设计器可以向设计时环境公开的属性、特性和事件说明符。
public interface class IDesignerFilter
public interface IDesignerFilter
type IDesignerFilter = interface
Public Interface IDesignerFilter
- 派生
示例
以下示例演示了 的替代PreFilterProperties,当设计时选择设计器的控件时,该重写会将设计器的属性添加到 属性窗口。 ControlDesigner有关使用 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
注解
IDesignerFilter 使设计器能够筛选其关联组件通过 TypeDescriptor公开的属性、特性和事件描述符集。 名称以 Pre
开头的此接口的方法在名称以 Post
开头的方法之前立即调用。
如果要添加属性、事件或属性描述符,请使用 PreFilterAttributes、 PreFilterEvents或 PreFilterProperties 方法。
如果要更改或删除属性、事件或属性描述符,请使用 PostFilterAttributes、 PostFilterEvents或 PostFilterProperties 方法。
方法
PostFilterAttributes(IDictionary) |
当在派生类中被重写后,允许设计器更改或移除它通过 TypeDescriptor 公开的特性集中的项。 |
PostFilterEvents(IDictionary) |
当在派生类中重写后,允许设计器更改或移除它通过 TypeDescriptor 公开的事件集中的项。 |
PostFilterProperties(IDictionary) |
当在派生类中重写后,允许设计器更改或移除它通过 TypeDescriptor 公开的属性集中的项。 |
PreFilterAttributes(IDictionary) |
当在派生类中被重写时,允许设计器将项添加到它通过 TypeDescriptor 公开的特性集中。 |
PreFilterEvents(IDictionary) |
当在派生类中被重写时,允许设计器将项添加到它通过 TypeDescriptor 公开的事件集中。 |
PreFilterProperties(IDictionary) |
当在派生类中被重写时,允许设计器将项添加到它通过 TypeDescriptor 公开的属性集中。 |