DesignSurfaceExtensionAttribute Constructor
Creates a new instance of the DesignSurfaceExtensionAttribute class specifying a given object as providing a VSPackage's implementation of DesignSurfaceExtension.
Namespace: Microsoft.VisualStudio.Shell.Design
Assembly: Microsoft.VisualStudio.Shell.Design (in Microsoft.VisualStudio.Shell.Design.dll)
Syntax
'Declaration
Public Sub New ( _
extensionType As Type _
)
public DesignSurfaceExtensionAttribute(
Type extensionType
)
public:
DesignSurfaceExtensionAttribute(
Type^ extensionType
)
new :
extensionType:Type -> DesignSurfaceExtensionAttribute
public function DesignSurfaceExtensionAttribute(
extensionType : Type
)
Parameters
extensionType
Type: TypeThe Type of the object providing an implementation of DesignSurfaceExtension to customize design surfaces.
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | extensionType is nulla null reference (Nothing in Visual Basic). |
ArgumentException | extensionType does not derive from DesignSurfaceExtension. |
Remarks
Whenever the VSPackage makes use of a design surface, an instance of extensionType object will be used to modify that surface's behavior.
The Type used to construct the DesignSurfaceExtensionAttribute must also be registered as an object provided by the VSPackage, with ProvideObjectAttribute and a service, with ProvideServiceAttribute.
Examples
The example below declares that the VSPackage CustomDesigner, provided the class CustomSurfaceExt to customize the design surface it uses.
[ProvideServiceAttribute(typeof(CustomSurfaceExt))]
[ProvideObjectAttribute(typeof(CustomSurfaceExt))]
[DesignSurfaceExtension(typeof(CustomSurfaceExt))]
class CustomDesigner : Package
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
DesignSurfaceExtensionAttribute Class
Microsoft.VisualStudio.Shell.Design Namespace
DesignSurfaceExtensionAttribute