ProvideExtenderAttribute Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
This attribute registers the package as an extender. The GUID passed in determines what is being extended. The attributes on a package do not control the behavior of the package, but they can be used by registration tools to register the proper information with Visual Studio.
public ref class ProvideExtenderAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
public ref class ProvideExtenderAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideExtenderAttribute : Microsoft.VisualStudio.Shell.RegistrationAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideExtenderAttribute = class
inherit RegistrationAttribute
Public NotInheritable Class ProvideExtenderAttribute
Inherits RegistrationAttribute
- Inheritance
- Attributes
Remarks
This attribute provides an extender (an object that implements IExtenderProvider) with Visual Studio. To use ProvideExtenderAttribute
, place it on a class that inherits from Package or implements IVsPackage.
This attribute class is used only to provide data for external registration tools. It does not have any effect on the runtime behavior of the VSPackage.
Note
C# automatically appends the word "Attribute" to the name of any attribute class. In C# code, refer to this attribute as ProvideExtender
.
Note
The GUIDs for the Visual C# and Visual Basic project types are {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} and {F184B08F-C81C-45F6-A57F-5ABD9991F28F}, respectively.
When to Call
Apply ProvideExtenderAttribute
when your VSPackage implements a static extender.
Registry Entries
The following registry entries are created by ProvideExtenderAttribute
:
<VSROOT>\Extenders\{CATID}\EditorName\
<VSROOT>\Extenders\{CATID}\EditorName\@={ExtenderGuid}
Samples
Constructors
ProvideExtenderAttribute(String, String, String) |
Creates a new ProvideExtenderAttribute. |
Properties
ExtendeeCatId |
The CatID of the element being extended. |
Extender |
The Guid of the extender. |
ExtenderName |
The name of the extender. |
TypeId |
Override the TypeID property in order to let the RegistrationAttribute derived classes to work with System.ComponentModel.TypeDescriptor.GetAttributes(...). An attribute derived from this one will have to override this property only if it needs a better control on the instances that can be applied to a class. (Inherited from RegistrationAttribute) |
Methods
GetPackageRegKeyPath(Guid) |
Gets the registry path (relative to the registry root of the application) of the VSPackage. (Inherited from RegistrationAttribute) |
Register(RegistrationAttribute+RegistrationContext) |
Called to register this attribute with the given context. The context contains the location where the registration information should be placed. it also contains such as the type being registered, and path information. |
Unregister(RegistrationAttribute+RegistrationContext) |
Unregister this Extender specification. |