DetailsViewDesigner.PreFilterProperties Method (IDictionary)

 

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

Namespace:   System.Web.UI.Design.WebControls
Assembly:  System.Design (in System.Design.dll)

protected override void PreFilterProperties(
	IDictionary properties
)

Parameters

properties
Type: System.Collections.IDictionary

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

Control designers use methods 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 the DetailsView control, the PreFilterProperties method sets the BrowsableAttribute object of the Fields property to false when the control is in template mode. This ensures that a column that is in template mode cannot be deleted using the Fields dialog box.

Notes to Inheritors:

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

The following code example shows how to override the PreFilterProperties method in a class that is inherited from the DetailsViewDesigner class to change the Properties grid of the DetailsView 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)
{
    // 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

.NET Framework
Available since 2.0
Return to top
Show: