Extends the design mode behavior of a component.
Assembly: System.Design (in System.Design.dll)
Thetype exposes the following members.
|ActionLists||Gets the design-time action lists supported by the component associated with the designer.|
|AssociatedComponents||Gets the collection of components associated with the component managed by the designer.|
|Component||Gets the component this designer is designing.|
|InheritanceAttribute||Gets an attribute that indicates the type of inheritance of the associated component.|
|Inherited||Gets a value indicating whether this component is inherited.|
|ParentComponent||Gets the parent component for this designer.|
|ShadowProperties||Gets a collection of property values that override user settings.|
|Verbs||Gets the design-time verbs supported by the component that is associated with the designer.|
|Dispose()||Releases all resources used by the .|
|Dispose(Boolean)||Releases the unmanaged resources used by the and optionally releases the managed resources.|
|DoDefaultAction||Creates a method signature in the source code file for the default event on the component and navigates the user's cursor to that location.|
|Equals(Object)||Determines whether the specified object is equal to the current object. (Inherited from Object.)|
|Finalize||Attempts to free resources by calling Dispose(false) before the object is reclaimed by garbage collection. (Overrides Object.Finalize().)|
|GetHashCode||Serves as the default hash function. (Inherited from Object.)|
|GetService||Attempts to retrieve the specified type of service from the design mode site of the designer's component.|
|GetType||Gets the Type of the current instance. (Inherited from Object.)|
|Initialize||Prepares the designer to view, edit, and design the specified component.|
|InitializeExistingComponent||Reinitializes an existing component.|
|InitializeNewComponent||Initializes a newly created component.|
|InitializeNonDefault||Obsolete. Initializes the settings for an imported component that is already initialized to settings other than the defaults.|
|InvokeGetInheritanceAttribute||Gets the InheritanceAttribute of the specified .|
|MemberwiseClone||Creates a shallow copy of the current Object. (Inherited from Object.)|
|OnSetComponentDefaults||Obsolete. Sets the default properties for the component.|
|PostFilterAttributes||Allows a designer to change or remove items from the set of attributes that it exposes through a TypeDescriptor.|
|PostFilterEvents||Allows a designer to change or remove items from the set of events that it exposes through a TypeDescriptor.|
|PostFilterProperties||Allows a designer to change or remove items from the set of properties that it exposes through a TypeDescriptor.|
|PreFilterAttributes||Allows a designer to add to the set of attributes that it exposes through a TypeDescriptor.|
|PreFilterEvents||Allows a designer to add to the set of events that it exposes through a TypeDescriptor.|
|PreFilterProperties||Allows a designer to add to the set of properties that it exposes through a TypeDescriptor.|
|RaiseComponentChanged||Notifies the IComponentChangeService that this component has been changed.|
|RaiseComponentChanging||Notifies the IComponentChangeService that this component is about to be changed.|
|ToString||Returns a string that represents the current object. (Inherited from Object.)|
|IDesignerFilter.PostFilterAttributes||For a description of this member, see the IDesignerFilter.PostFilterAttributes method.|
|IDesignerFilter.PostFilterEvents||For a description of this member, see the IDesignerFilter.PostFilterEvents method.|
|IDesignerFilter.PostFilterProperties||For a description of this member, see the IDesignerFilter.PostFilterProperties method.|
|IDesignerFilter.PreFilterAttributes||For a description of this member, see the IDesignerFilter.PreFilterAttributes method.|
|IDesignerFilter.PreFilterEvents||For a description of this member, see the IDesignerFilter.PreFilterEvents method.|
|IDesignerFilter.PreFilterProperties||For a description of this member, see the IDesignerFilter.PreFilterProperties method.|
|ITreeDesigner.Children||For a description of this member, see the ITreeDesigner.Children property.|
|ITreeDesigner.Parent||For a description of this member, see the ITreeDesigner.Parent property.|
The base designer class provides a simple designer that can extend the behavior of an associated component in design mode.
provides an empty IDesignerFilter interface implementation, whose methods can be overridden to adjust the attributes, properties and events of the associated component at design time.
The class implements a special behavior for the property descriptors of inherited components. An internal type named InheritedPropertyDescriptor is used by the default implementation to stand in for properties that are inherited from a base class. There are two cases in which these property descriptors are added.
To the root object itself, which is returned by the IDesignerHost.RootComponent property, because you are inheriting from its base class.
To fields found in the base class of the root object. Public and protected fields from the base class are added to the designer so that they can be manipulated by the user.
The InheritedPropertyDescriptor class modifies the default value of a property, so that the default value is the current value at object instantiation. This is because the property is inherited from another instance. The designer defines resetting the property value as setting it to the value that was set by the inherited class. This value may differ from the default value stored in metadata.
The following code example provides an example implementation and an example component associated with the designer. The designer implements an override of the Initialize method that calls the base Initialize method, an override of the DoDefaultAction method that displays a MessageBox when the component is double-clicked, and an override of the Verbs property accessor that supplies a custom DesignerVerb menu command to the shortcut menu for the component.
Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.