This documentation is archived and is not being maintained.

Microsoft.VisualStudio.Shell Namespace

Public classDefaultRegistryRootAttributeDefines the default registry root used to register VSPackage information. This class cannot be inherited.
Public classDesignPropertyDescriptorA specialization of PropertyDescriptor that allows customization of the display name of the property in the property grid.
Public classDialogContainerWithToolbarUse this class to implement modal forms in Visual Studio. The implementation enables the form to host a Visual Studio command bar so that it participates in standard command routing.
Public classDialogPageProvides a standard dialog box functionality for implementing Toolbox property sheets, Tools Options pages, or custom UI dialog boxes, with support for the Visual Studio automation model, Windows Forms, and state persistence by using the Visual Studio settings mechanism.
Protected classDialogPage.PageApplyEventArgsEvent arguments that allow the OnApply method to indicate how to handle the apply event.
Public classErrorListProviderThis task provider is used to provide tasks for the Visual Studio Error List window.
Public classErrorTaskRepresents an error task on the Task List. This class implements IVsErrorItem.
Public classEventSinkCollectionMaps objects to and from event "cookies" that represent a client's registration with an event provider.
Public classInstalledProductRegistrationAttributeProvides information for the Visual Studio splash screen and the Help About dialog box when applied to a Package-derived class or a class that implements IVsPackage. This class cannot be inherited.
Public classLocalizablePropertiesLocalizableProperties provides a class that supplies custom type information on localizable properties for an object.
Public classLocDisplayNameAttributeSpecifies the localizable display name for a property, event, or public void method which takes no arguments.
Public classMsiComponentIdAttributeDefines the Windows Installer component ID. The component ID is used by the Windows Installer to indicate the installation path to the VSPackage.
Public classMsiTokenAttributeDefines a token string for the MSI installer.
Public classOleDataObjectProvides a managed class that implements the IOleDataObject interface.
Public classOleMenuCmdEventArgsThe set of arguments passed to an OleMenuCommand object when the Invoke function is called.
Public classOleMenuCommandRepresents a menu command in Visual Studio.
Public classOleMenuCommandServiceThis class derives from the MenuCommandService class and implements IOleCommandTarget. MenuCommandService is the managed class used to add handlers for menu commands and to define verbs.
Public classPackageProvides a managed implementation of the VSIP interfaces required to create a fully functional VSPackage.
Public classPackageRegistrationAttributeModify your class that implements IVsPackage by using this attribute so that the registration tool, RegPkg.exe, will look for additional attributes. For more information, see Registering VSPackages (C#).
Public classPackageUtilitiesA set of static utilities for filenames, paths, enumeration/string conversions, images, and other functions.
Public classPropertyPageTypeConverterAttributeThe class representing the attribute describing how to convert property values on property pages in a package. Use this attribute rather than TypeConverterAttribute.
Public classProvideAssemblyFilterAttributeDescribes the assemblies that the IConfigureToolboxItem class supports.
Public classProvideAutoLoadAttributeApply this attribute to your VSPackage class to cause it to be automatically loaded when a specified UI context is active. This class cannot be inherited.
Public classProvideAutomationObjectAttributeModifying your Package-derived class with this attribute declares that it provides a particular automation object.
Public classProvideEditorExtensionAttributeAssociates a file extension to a given editor factory when applied to a class that inherits from Package or implements the interface IVsPackage.
Public classProvideEditorFactoryAttributeThis attribute declares that the VSPackage provides an editor factory.
Public classProvideEditorLogicalViewAttributeAdds a logical view to the editor created by an editor factory.
Public classProvideExtenderAttributeProvides an extender for Visual Studio. This class cannot be inherited.
Public classProvideKeyBindingTableAttributeProvides a key binding table GUID. By putting this attribute on your Package-derived class or class that implements IVsPackage you will declare that it has the given key binding (KEYBINDINGS_SECTION – KEYBINDINGS_END) table in its Command Table Configuration (.Ctc) Files.
Public classProvideLanguageCodeExpansionAttributeRegisters language service support for code snippets.
Public classProvideLanguageEditorOptionPageAttributeInforms Visual Studio about a language service property page.
Public classProvideLanguageEditorToolsOptionCategoryAttributeThis attribute is used to declare a Tools Option category for a language.
Public classProvideLanguageExtensionAttributeAssociates a file extension with a particular language service.
Public classProvideLanguageServiceAttributeInforms Visual Studio that a VSPackage provides a language service. Used with the managed package framework (MPF).
Public classProvideLoadKeyAttributeThis attribute provides a package load key for your package.
Public classProvideMenuResourceAttributeProvides registration information about menu resources used in a VSPackage. This class cannot be inherited.
Public classProvideObjectAttributeInforms Visual Studio that the VSPackage provides an object that can be created from the ILocalRegistryinterface. This class cannot be inherited.
Public classProvideOptionDialogPageAttributeThe base class for all the attributes that are used to register an option page.
Public classProvideOptionPageAttributeApply this attribute to independent objects to allow users to configure VSPackages through a custom Tools Options page.
Public classProvideProfileAttributeApply this attribute to independent objects used to implement a VSPackage's Visual Studio settings support.
Public classProvideProjectFactoryAttributeProvideProjectFactoryAttribute declares that a package provides a project factory.
Public classProvideProjectItemAttributeThis attribute registers items to be included in the Add New Item dialog for the specified project type. It is placed on a VSPackage.
Public classProvideServiceAttributeThis attribute indicates that the package proffers a service when applied to a subclass of Package or a class that implements IVsPackage.
Public classProvideToolboxFormatAttributeApply this attribute to classes implementing VSPackages to declare that the VSPackage provides Toolbox items with the specified clipboard format and to enable drag-and-drop support in the Visual Studio Toolbox.
Public classProvideToolboxItemConfigurationAttributeRegisters a VSPackage as supplying a particular implementation of IConfigureToolboxItem. Used in conjunction with ProvideAssemblyFilterAttribute.
Public classProvideToolboxItemsAttributeApply this attribute to classes implementing VSPackages to declare if they offer a set of items to the Visual Studio Toolbox.
Public classProvideToolboxPageAttributeRegisters a VSPackage as providing one or more dialog pages in the Customize Toolbox dialog page of the Visual Studio IDE.
Public classProvideToolWindowAttributeNotifies Visual Studio that a VSPackage owns a tool window.
Public classProvideToolWindowVisibilityAttributeMaps a tool window to one or more UI contexts, so that the window is displayed when the user switches to one of those contexts and is hidden when the user switches away from one of the contexts.
Public classProvideViewAttributeThis attribute declares that an editor factory class offers a particular logical view.
Public classRegisterAutoLoadAttribute Obsolete. Registers the VSPackage as an extender that is automatically loaded in response to a particular context GUID. This class cannot be inherited.
Public classRegisterEditorExtensionAttribute Obsolete. See ProvideEditorExtensionAttribute. Registers a file extension with a given editor factory. This class cannot be inherited.
Public classRegisterEditorLogicalViewAttribute Obsolete. Adds a logical view to the editor created by an editor factory. This attribute has been deprecated. Please use ProvideEditorLogicalViewAttribute instead.
Public classRegisterExtenderAttribute Obsolete. Registers an extender with Visual Studio. This class cannot be inherited. This class is obsolete. Please use ProvideExtenderAttribute instead.
Public classRegisterLanguageExtensionAttribute Obsolete. Registers a file extension with a given language service by applying the attribute to a Package-derived class or class that implements IVsPackage when registered using a registration tool like regpkg.exe. For more information, see Registering VSPackages (C#).
Public classRegisterLoadKeyAttribute Obsolete. Registers a Package load key with the VSPackage. This class cannot be inherited.
Public classRegisterProjectItemAttribute Obsolete. RegisterProjectItemAttribute has been deprecated. Please use ProvideProjectItemAttribute instead
Public classRegistrationAttributeInfrastructure. An abstract class for VSPackage registration. The RegistrationAttribute class allows new registration information to be added without changing the registration tools.
Public classRegistrationAttribute.KeyProvides an abstract class that represents a registration key.
Public classRegistrationAttribute.RegistrationContextAn abstract base class for objects providing context information from an external source to a registration attribute.
Public classRunningDocumentTableProvides access to the Running Document Table (RDT) that tracks all currently opened documents in Visual Studio.
Public classSelectionContainerProvides a unified interface for accessing a set of selected objects.
Public classServiceProviderProvides a unified service provider for managed VSPackages.
Public classServiceProviderHierarchyA hierarchical service provider that stores IServiceProvider objects in a sorted collection for an ordered retrieval. When GetService is called to retrieve a service, the service providers are queried in a specific order. This is useful when multiple service providers are combined, such as in the WindowPane implementation.
Public classServiceProviderHierarchyOrderProvides a recommended service resolution order for common service providers. When multiple service providers are combined in a service provider hierarchy, they are given a numeric ordering.
Public classTaskAn implementation of IVsTaskItem, used to modify the appearance and functionality of a task in the task list.
Public classTaskProviderThis class implements IVsTaskProvider. It provides a framework-friendly way to define a task provider and its associated services.
Public classTaskProvider.TaskCollectionA container for Task objects.
Public classToolWindowPaneA default implementation for a tool window. It can be subclassed to implement a customized tool window.
Public classUrlWraps the Uri class. Provides an unescaped version of LocalPath for file URL types and AbsoluteUri for HTTP URL types. Also returns an unescaped result from MakeRelativeUri so that it can be presented to the user.
Public classVsMenusIncludes the GUIDs for Visual Studio menu commands.
Public classVSRegistryProvides utility functions for discovering the registry hive under which Visual Studio is currently running.
Public classVsShellUtilitiesProvides static helper methods to use with the Visual Studio shell.
Public classWindowPaneA default implementation of a tool window pane. This class implements IVsWindowPane, but the implementer must provide an implementation of an object that returns an IWin32Window. This class also implements IOleCommandTarget, maps it to IMenuCommandService and IObjectWithSite, and maps the site to services that can be queried through its protected GetService method.

Public structureRunningDocumentInfoRepresents information about a document in the RunningDocumentTable. It includes all the information returned by GetDocumentInfo.

Public interfaceIConfigureToolboxItemProvides the ability to configure ToolboxItem objects dynamically by adding additional data to the toolbox item's Properties dictionary. This data is then serialized as a permanent part of the toolbox item.
Public interfaceIMenuCommandInvokeEx
Public interfaceIOleMenuCommand
Public interfaceIProfileManagerInterface implemented by classes supporting VSPackages by persisting their state information through the Visual Studio settings mechanism.
Public interfaceIProfileMigrator
Public interfaceIResXResourceServiceAn abstraction layer that lets clients control the resx readers and writers used within Visual Studio.

Public enumerationDialogPage.ApplyKindAn enumeration that describes dialog page apply behavior.
Public enumerationLogicalViewThis enumeration lists the supported logical views.
Public enumerationProfileMigrationType
Public enumerationRegistrationMethodSpecifies how the assembly should be registered/located.
Public enumerationTaskCategoryProvides a set of task categories that specify the kind of task that is to be performed.
Public enumerationTaskErrorCategoryRepresents a collection of values that identify types or severity of error messages that can appear in the Error List Options task window.
Public enumerationTaskPriorityProvides values for task priorities.
Public enumerationToolWindowOrientationThis enumeration provides a number of possible tool window orientations with respect to a docking window.
Public enumerationVsDockStyleDefines constants for tool window orientation.