LoginDesigner.PreFilterProperties(IDictionary) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
供设计器使用,以从“属性”网格的显示中移除属性或向其添加其他属性或者隐藏关联控件的属性。
protected:
override void PreFilterProperties(System::Collections::IDictionary ^ properties);
protected override void PreFilterProperties (System.Collections.IDictionary properties);
override this.PreFilterProperties : System.Collections.IDictionary -> unit
Protected Overrides Sub PreFilterProperties (properties As IDictionary)
参数
- properties
- IDictionary
实现添加的和隐藏的属性的 IDictionary 的集合。
示例
下面的代码示例创建一个派生自 LoginDesigner的类,并重写 PreFilterProperties 方法以在设计时更改控件的Login“属性”网格。 该示例使 NamingContainer 属性在 “属性” 网格中可见。
// Shadow the control properties with design-time properties.
protected override void PreFilterProperties(IDictionary properties)
{
// Call the base method first.
base.PreFilterProperties(properties);
// Make the NamingContainer visible in the Properties grid.
PropertyDescriptor selectProp =
(PropertyDescriptor)properties["NamingContainer"];
properties["NamingContainer"] =
TypeDescriptor.CreateProperty(selectProp.ComponentType,
selectProp, BrowsableAttribute.Yes);
} // PreFilterProperties
' Shadow the control properties with design-time properties.
Protected Overrides Sub PreFilterProperties( _
ByVal properties As IDictionary)
' Call the base method first.
MyBase.PreFilterProperties(properties)
' Make the NamingContainer visible in the Properties grid.
Dim selectProp As PropertyDescriptor = _
CType(properties("NamingContainer"), PropertyDescriptor)
properties("NamingContainer") = _
TypeDescriptor.CreateProperty(selectProp.ComponentType, _
selectProp, BrowsableAttribute.Yes)
End Sub
注解
控件设计器使用派生自 ComponentDesigner.PreFilterProperties 方法的方法,使用设计器实现的相应设计时属性隐藏各种控件属性,以及向“ 属性” 网格添加属性或从中删除属性。
如果已为Login控件定义了属性LayoutTemplate, 将PreFilterProperties设置BrowsableAttribute模板化false
时不适用的属性的属性,以便这些属性不会显示在“属性”网格中。
继承者说明
重写 方法以 PreFilterProperties(IDictionary) 向设计时属性集合中的属性添加或更改属性的属性。 在执行其他处理之前,请务必调用基方法。