This documentation is archived and is not being maintained.

DesignSurfaceManager Class

Manages a collection of DesignSurface objects.


Namespace:  System.ComponentModel.Design
Assembly:  System.Design (in System.Design.dll)

[PermissionSetAttribute(SecurityAction.LinkDemand, Name = "FullTrust")]
[PermissionSetAttribute(SecurityAction.InheritanceDemand, Name = "FullTrust")]
public class DesignSurfaceManager : IServiceProvider, 

The DesignSurfaceManager type exposes the following members.

Public methodDesignSurfaceManager()Initializes a new instance of the DesignSurfaceManager class.
Public methodDesignSurfaceManager(IServiceProvider)Initializes a new instance of the DesignSurfaceManager class.

Public propertyActiveDesignSurfaceGets or sets the active designer.
Public propertyDesignSurfacesGets a collection of design surfaces.
Protected propertyServiceContainerGets the design surface manager's ServiceContainer.

Public methodCreateDesignSurface()Creates an instance of a design surface.
Public methodCreateDesignSurface(IServiceProvider)Creates an instance of a design surface.
Protected methodCreateDesignSurfaceCoreImplementation that creates the design surface.
Public methodDispose()Releases the resources used by the DesignSurfaceManager.
Protected methodDispose(Boolean)Releases the unmanaged resources used by the DesignSurfaceManager and optionally releases the managed resources.
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetServiceGets a service in the design surface manager’s service container.
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

Public eventActiveDesignSurfaceChangedOccurs when the currently active designer changes.
Public eventDesignSurfaceCreatedOccurs when a designer is created.
Public eventDesignSurfaceDisposedOccurs when a designer is disposed.
Public eventSelectionChangedOccurs when the global selection changes.

The DesignSurfaceManager class is designed to be a container of DesignSurface objects. It provides common services that handle event routing between designers, property windows, and other global objects. Using DesignSurfaceManager is optional, but it is recommended if you intend to have several designer windows.

The DesignSurfaceManager class provides several design-time services automatically. You can override each of these services by replacing them in the protected ServiceContainer property. To replace a service, override the constructor, call base, and make any changes through the protected ServiceContainer property. All services added to the service container that implement the IDisposable interface are disposed when the design surface manager is disposed. The DesignSurfaceManager class provides the IDesignerEventService interface as the default service. IDesignerEventService provides a global eventing mechanism for designer events. With this mechanism, an application is informed when a designer becomes active. The service provides a collection of designers and a single place where global objects, such as the Properties window, can monitor selection change events.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.