ProvideToolboxItemsAttribute 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.
Apply this attribute to classes implementing VSPackages to declare if they offer a set of items to the Visual Studio Toolbox.
public ref class ProvideToolboxItemsAttribute : Microsoft::VisualStudio::Shell::RegistrationAttribute
[System.AttributeUsage(System.AttributeTargets.Class, Inherited=true)]
public class ProvideToolboxItemsAttribute : Microsoft.VisualStudio.Shell.RegistrationAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, Inherited=true)>]
type ProvideToolboxItemsAttribute = class
inherit RegistrationAttribute
Public Class ProvideToolboxItemsAttribute
Inherits RegistrationAttribute
- Inheritance
- Attributes
Examples
In the example below, the attributes applied to the class MyPackage
indicates that it supports version 1 of Toolbox items of with two clipboard formats "CF_XMLCODE" and "InPlaceMenuEditorMenu".
[DefaultRegistryRoot("Software\\Microsoft\\VisualStudio\\8.0")]
[ProvideToolboxItems(true, 1)]
[ProvideToolboxFormat("CF_XMLCODE")]
[ProvideToolboxFormat("InPlaceMenuEditorMenu")]
[Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")]
internal sealed class MyPackage : Package
Remarks
Attribute Context
Applies to | Classes providing VSPackages by implementing IVsPackage, Package. |
Repeatable | No |
Required attributes | ProvideToolboxFormatAttribute |
Invalid attributes | None |
Apply this attribute to a Package-derived class or a class that implements IVsPackage that is required to enable support for users to drag data objects of this format, provided by the class, onto the Toolbox. This implementing class must handle the drop notifications itself.
This attribute is only used for registration purposes, and does not affect how code behaves at runtime.
Depending on the arguments specified in its constructor, this attribute can indicate that a VSPackage does not provide any Toolbox items. If the attribute ProvideToolboxFormatAttribute is added to a class to indicate that it provides Toolbox items, one or more instances of ProvideToolboxFormatAttribute must also be added.
This attribute uses ProvideToolboxFormatAttribute to register a VSPackage as providing Toolbox items of a given format.
If this attribute specifies that Toolbox items are provided, the VSPackage must handle the ToolboxInitialized and ToolboxUpgraded events.
Any VSPackage using this attribute must provide a handler for the ToolboxInitialized and ToolboxUpgraded events.
Constructors
ProvideToolboxItemsAttribute(Int32, Boolean) |
Initializes a new instance of ProvideToolboxItemsAttribute for the specified version. |
ProvideToolboxItemsAttribute(Int32) |
Creates a new instance of ProvideToolboxItemsAttribute which indicates if a class implementing a VSPackage is providing Toolbox items. |
Properties
NeedsCallBackAfterReset |
Setting this to true will force a ToolboxInitialized event after each toolbox reset. This can be used when developing your package to force the toolbox to ask the list of items to the package everytime (in case it has changed). For shipped products, it is best to leave it to false so that the cache can be used for better performances. Some scenario (such as item list that cannot cannot be persisted to the cache) may need to have this flag set to true |
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) |
Version |
Property returning the version of Toolbox items a VSPackage provides. |
Methods
GetPackageRegKeyPath(Guid) |
Gets the registry path (relative to the registry root of the application) of the VSPackage. (Inherited from RegistrationAttribute) |
Register(RegistrationAttribute+RegistrationContext) |
Registers a VSPackage as a Toolbox item provider for specified formats when called by an external registration tool such as regpkg.exe. For more information, see Registering VSPackages. |
Unregister(RegistrationAttribute+RegistrationContext) |
Reverses the changes that the Register(RegistrationAttribute+RegistrationContext) method had applied to the registry. |