Edit

Share via


HierarchicalDataBoundControlDesigner.PreFilterProperties(IDictionary) Method

Definition

Used by the designer to remove properties from or add additional properties to the display in the Properties grid or to shadow properties of the associated control.

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)

Parameters

properties
IDictionary

A collection implementing the IDictionary of the added and shadowed properties.

Examples

The following code example shows how to override the PreFilterProperties method in a class that is inherited from the HierarchicalDataBoundControlDesigner class to change the Properties grid of the HierarchicalDataBoundControl control at design time. The example makes the NamingContainer property visible in the Properties grid.

// Shadow the control properties with design-time properties.
protected override void PreFilterProperties(IDictionary properties)
{
    string namingContainer = "NamingContainer";

    // Call the base method first.
    base.PreFilterProperties(properties);

    // Make the NamingContainery 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)

    Dim namingContainer As String = "NamingContainer"

    ' Call the base method first.
    MyBase.PreFilterProperties(properties)

    ' Make the NamingContainery visible in the Properties grid.
    Dim selectProp As PropertyDescriptor = _
        CType(properties(namingContainer), PropertyDescriptor)
    properties(namingContainer) = _
        TypeDescriptor.CreateProperty(selectProp.ComponentType, _
            selectProp, BrowsableAttribute.Yes)
End Sub

Remarks

Control designers use methods that are derived from the ComponentDesigner.PreFilterProperties method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the Properties grid.

For controls that are derived from the HierarchicalDataBoundControl class, the PreFilterProperties method creates design-time properties to shadow the DataSource and DataSourceID properties.

Notes to Inheritors

Override the PreFilterProperties(IDictionary) method to add properties to or change the attributes of properties in the design-time property collection. Be sure to call the base method before performing other processing.

Applies to

See also