Export (0) Print
Expand All

OleMenuCommandService Class

This 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.

This class is not CLS-compliant.  

Namespace: Microsoft.VisualStudio.Shell
Assembly: Microsoft.VisualStudio.Shell (in microsoft.visualstudio.shell.dll)

[ComVisibleAttribute(true)] 
[CLSCompliantAttribute(false)] 
public class OleMenuCommandService : MenuCommandService, IOleCommandTarget
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute CLSCompliantAttribute(false) */ 
public class OleMenuCommandService extends MenuCommandService implements IOleCommandTarget
ComVisibleAttribute(true) 
CLSCompliantAttribute(false) 
public class OleMenuCommandService extends MenuCommandService implements IOleCommandTarget

OleMenuCommandService is automatically offered by the Package class (to offer global commands for an entire package), and it is also offered by the WindowPane class (to offer commands for the current window). This offering is always done via the service container, so anyone deriving from the Package or WindowPane classes can remove or replace the default implementation of OleMenuCommandService. OleMenuCommandService utilizes several other services. All of these services are optional, so the behavior of OleMenuCommandService will degrade if one or more services are missing. The following table shows which services are used and for what purpose:

Service

Use

ISelectionService

Used to discover the current selection in order to obtain verbs offered by the currently selected designer.

IDesignerHost

Used to obtain the designer for the currently selected component, if any.

IVsUIShell

Used to notify Visual Studio that the command status has changed.

Used to execute global commands

OleComponentUIManager

Used to show context menus

System.Object
   System.ComponentModel.Design.MenuCommandService
    Microsoft.VisualStudio.Shell.OleMenuCommandService

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

Community Additions

ADD
Show:
© 2014 Microsoft