DetailsViewDesigner.PreFilterProperties(IDictionary) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
供设计器使用,以从 Properties
网格的显示中移除属性或向其添加属性或者隐藏关联控件的属性。
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 的集合。
示例
下面的代码示例演示如何重写 PreFilterProperties 从 DetailsViewDesigner 类继承的类中的 方法,以在设计时更改 Properties
控件的 DetailsView 网格。 该示例使 NamingContainer 属性在网格中 Properties
可见。
// 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 方法的方法使用设计器实现的相应设计时属性隐藏各种控件属性,以及向网格添加属性或从 Properties
网格中删除属性。
DetailsView对于 控件,当控件处于BrowsableAttribute模板模式时, PreFilterProperties 方法将 Fields 属性的 对象设置为 false
。 这可确保无法使用对话框删除处于模板模式的 Fields
列。
继承者说明
重写 方法以 PreFilterProperties(IDictionary) 向设计时属性集合中的属性添加或更改属性的属性。 在执行其他处理之前,请务必调用基方法。