IMenuCommandService IMenuCommandService IMenuCommandService IMenuCommandService Interface

Definition

Stellt Methoden bereit, mit denen Sie die im Entwurfsmodus verfügbaren globalen Designerverben und Menübefehle verwalten sowie einige Typen von Kontextmenüs anzeigen können.Provides methods to manage the global designer verbs and menu commands available in design mode, and to show some types of shortcut menus.

public interface class IMenuCommandService
[System.Runtime.InteropServices.ComVisible(true)]
public interface IMenuCommandService
type IMenuCommandService = interface
Public Interface IMenuCommandService
Abgeleitet
Attribute

Beispiele

Dieses Beispiel veranschaulicht die Verwendung der IMenuCommandService Hinzufügen einer MenuCommand.This example demonstrates using the IMenuCommandService to add a MenuCommand.

   public ref class CDesigner: public ComponentDesigner
   {
   public:
    [PermissionSetAttribute(SecurityAction::Demand, Name="FullTrust")]
      virtual void Initialize( IComponent^ comp ) override
      {
         ComponentDesigner::Initialize( comp );
         IMenuCommandService^ mcs = static_cast<IMenuCommandService^>(comp->Site->GetService( IMenuCommandService::typeid ));
		 MenuCommand^ mc = gcnew MenuCommand( gcnew EventHandler( this, &CDesigner::OnF1Help ),StandardCommands::F1Help );
         mc->Enabled = true;
         mc->Visible = true;
         mc->Supported = true;
         mcs->AddCommand( mc );
         System::Windows::Forms::MessageBox::Show( "Initialize() has been invoked." );
      }

   private:
      void OnF1Help( Object^ /*sender*/, EventArgs^ /*e*/ )
      {
         System::Windows::Forms::MessageBox::Show( "F1Help has been invoked." );
      }
   };
}
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")] 
public class CDesigner : System.ComponentModel.Design.ComponentDesigner 
{
    public override void Initialize(IComponent comp) 
    {
        base.Initialize(comp);

        IMenuCommandService mcs = (IMenuCommandService)comp.Site.
                    GetService(typeof(IMenuCommandService));
        MenuCommand mc = new MenuCommand(new EventHandler(OnF1Help), StandardCommands.F1Help);
        mc.Enabled = true;
        mc.Visible = true;
        mc.Supported = true;
        mcs.AddCommand(mc);
        System.Windows.Forms.MessageBox.Show("Initialize() has been invoked.");
    }

    private void OnF1Help(object sender, EventArgs e) 
    {
        System.Windows.Forms.MessageBox.Show("F1Help has been invoked.");
    }
}
<System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
Public Class CDesigner
    Inherits System.ComponentModel.Design.ComponentDesigner

    Public Overrides Sub Initialize(ByVal comp As IComponent)
        MyBase.Initialize(comp)

        Dim mcs As IMenuCommandService = CType(comp.Site.GetService(GetType(IMenuCommandService)), IMenuCommandService)
        Dim mc As New MenuCommand(New EventHandler(AddressOf OnF1Help), StandardCommands.F1Help)
        mc.Enabled = True
        mc.Visible = True
        mc.Supported = True
        mcs.AddCommand(mc)
        System.Windows.Forms.MessageBox.Show("Initialize() has been invoked.")
    End Sub

    Private Sub OnF1Help(ByVal sender As Object, ByVal e As EventArgs)
        System.Windows.Forms.MessageBox.Show("F1Help has been invoked.")
    End Sub
End Class

Hinweise

Diese Schnittstelle stellt Methoden bereit:This interface provides methods to:

  • Suchen, aufrufen, hinzufügen und globale Designerverbbefehle zu entfernen.Find, invoke, add and remove global designer verb commands.

  • Suchen Sie, rufen Sie auf, fügen Sie hinzu und entfernen Sie der standardmäßigen Menübefehle.Find, invoke, add and remove standard menu commands.

  • Ändern Sie die Ereignishandler, der standardmäßigen Menübefehle zugeordnet.Alter the event handlers associated with standard menu commands.

  • Anzeigen eines Kontextmenüs von Standardbefehlen, die mit einem Menü verknüpft ist CommandID.Display a shortcut menu of standard commands that is associated with a menu CommandID.

Designerverben darstellen, benutzerdefinierte Befehle, die im Kontextmenü im Entwurfsmodus aufgeführt sind.Designer verbs represent custom-defined commands that are listed on the shortcut menu in design mode. Ein Designerverb bieten eine Bezeichnung für angegebenen Text.A designer verb can provide a specified text label. Jede DesignerVerb erhält automatisch eine eindeutige CommandID.Each designer verb is automatically assigned a unique CommandID. Ein Designer kann Designerverben durch Bereitstellen der Verbs -Eigenschaft, aber diese sind nur verfügbar, wenn die Komponente des Designers derzeit ausgewählt ist.A designer can provide designer verbs through its Verbs property, but these are only available when the designer's component is currently selected. Globale Designerverben sind DesignerVerb-Befehle, die über ein Kontextmenü Entwurfsmodus, unabhängig von der ausgewählten Komponente zugegriffen werden können.Global designer verbs are designer verb commands that can be accessed from a design-mode shortcut menu regardless of the selected component. Diese Schnittstelle ermöglicht es Ihnen, den Satz von globalen Designerverben zu verwalten, die im Entwurfsmodus verfügbar sind.This interface allows you to manage the set of global designer verbs that are available in design mode.

Sie können eine globale Designerverb mit Hinzufügen der AddVerb Methode, und Sie können eine globale Designerverb mit Entfernen der RemoveVerb Methode.You can add a global designer verb using the AddVerb method, and you can remove a global designer verb using the RemoveVerb method. Sie können ein Designerverb mit Aufrufen der GlobalInvoke Methode, wenn man die CommandID des Verbs.You can invoke a designer verb using the GlobalInvoke method if you know the CommandID of the verb. Die Verbs -Eigenschaft dieser Schnittstelle enthält den aktuellen Satz von Designerverbbefehle in einem Kontextmenü anzeigen.The Verbs property of this interface contains the current set of designer verb commands to display in a shortcut menu. Dieser Satz von Designer-Verb-Befehlen besteht aus allen globalen Designerverben und alle Designerverben, die vom Designer der aktuell ausgewählten Komponenten bereitgestellt.This set of designer verb commands consists of all global designer verbs and any designer verbs offered by the designer of any currently selected component. Diese Gruppe von Verben wird jedes Mal aktualisiert, eine Komponente mit einem Angebot Designerverbbefehle Designer aktiviert oder deaktiviert ist.This set of verbs is updated each time a component with a designer offering designer verb commands is selected or deselected.

Befehle im Menü sind auf den Satz von vordefinierten Standardbefehle beschränkt.Menu commands are limited to the set of predefined standard commands. Die meisten vordefinierten Standardbefehle sind definiert, der StandardCommands und MenuCommands Enumerationen.Most of the predefined standard commands are defined in the StandardCommands and MenuCommands enumerations. Sie können hinzufügen, entfernen, und rufen Sie die Befehle im Menü, und suchen Sie nach Menübefehle, in denen ein Menü mit den Methoden der diese Schnittstelle hinzugefügt wurden.You can add, remove, and invoke menu commands, and search for menu commands that have been added to a menu using methods of this interface.

Können Sie hinzufügen, eine standardmäßige Menübefehl mit der AddCommand -Methode, und entfernen, die eine standardmäßige Menübefehl mit der RemoveCommand Methode.You can add a standard menu command using the AddCommand method, and remove a standard menu command using the RemoveCommand method. Sie können einen Ereignishandler an einen vordefinierten Befehl anfügen, indem Sie die Schritte beschrieben, die in der Dokumentation für die AddCommand Methode.You can attach an event handler to a predefined standard menu command by following the procedure detailed in the documentation for the AddCommand method. Sie können einen Befehl vom abrufen CommandID , wenn sie mit einem Menü hinzugefügt wurde die FindCommand Methode.You can retrieve a menu command by CommandID if it has been added to a menu using the FindCommand method. Sie können einen Menübefehl oder Designerverbbefehl über Aufrufen CommandID mithilfe der GlobalInvoke Methode.You can invoke a menu command or designer verb command by CommandID using the GlobalInvoke method.

Hinweis

Beim Hinzufügen ein Menübefehls mit einer bereits vorhandenen CommandID löst eine InvalidOperationException.An attempt to add a menu command with an already existing CommandID will throw an InvalidOperationException. Wenn Sie einen Befehl hinzufügen, werden Sie sicher, dass es nicht bereits auf einem Menü mit ist der FindCommand Methode oder Ausnahmebehandlung sinnvoll verwenden.When adding a menu command, be sure to check that it is not already on a menu using the FindCommand method, or use exception handling wisely.

Hinweis

Ein Menübefehl zu einem Menü hinzugefügt werden können, und haben die Visible oder Enabled Eigenschaften festgelegt, um false.A menu command can be added to a menu, and have its Visible or Enabled properties set to false. Wenn Sie visuell einen Menübefehl nicht finden, die in einem Menü hinzugefügt wurde, eine dieser Eigenschaften kann festgelegt wurden, false.If you cannot visually locate a menu command that has been added on a menu, one of these properties may have been set to false.

Sie können anzeigen, bestimmte standardmäßige Kontextmenüs, die Menübefehle zu einem angegebenen Speicherort mithilfe der ShowContextMenu Methode.You can show certain standard shortcut menus containing menu commands at a specified location using the ShowContextMenu method. Die Dokumentation für diese Methode enthält, eine Tabelle, in die Befehls-IDs, die angeben, die gültige Menüs angezeigt wird.The documentation for this method contains a table listing the command IDs that specify the valid menus to show.

Eigenschaften

Verbs Verbs Verbs Verbs

Ruft eine Auflistung der aktuell verfügbaren Designerverben ab.Gets a collection of the designer verbs that are currently available.

Methoden

AddCommand(MenuCommand) AddCommand(MenuCommand) AddCommand(MenuCommand) AddCommand(MenuCommand)

Fügt dem Menü den angegebenen Standardmenübefehl hinzu.Adds the specified standard menu command to the menu.

AddVerb(DesignerVerb) AddVerb(DesignerVerb) AddVerb(DesignerVerb) AddVerb(DesignerVerb)

Fügt das angegebene Designerverb der Gruppe der globalen Designerverben hinzu.Adds the specified designer verb to the set of global designer verbs.

FindCommand(CommandID) FindCommand(CommandID) FindCommand(CommandID) FindCommand(CommandID)

Sucht nach der angegebenen Befehls-ID und gibt den zugeordneten Menübefehl zurück.Searches for the specified command ID and returns the menu command associated with it.

GlobalInvoke(CommandID) GlobalInvoke(CommandID) GlobalInvoke(CommandID) GlobalInvoke(CommandID)

Ruft einen der angegebenen Befehls-ID entsprechenden Menübefehl oder Designerverbbefehl auf.Invokes a menu or designer verb command matching the specified command ID.

RemoveCommand(MenuCommand) RemoveCommand(MenuCommand) RemoveCommand(MenuCommand) RemoveCommand(MenuCommand)

Entfernt den angegebenen Standardmenübefehl aus dem Menü.Removes the specified standard menu command from the menu.

RemoveVerb(DesignerVerb) RemoveVerb(DesignerVerb) RemoveVerb(DesignerVerb) RemoveVerb(DesignerVerb)

Entfernt das angegebene Designerverb aus der Auflistung von globalen Designerverben.Removes the specified designer verb from the collection of global designer verbs.

ShowContextMenu(CommandID, Int32, Int32) ShowContextMenu(CommandID, Int32, Int32) ShowContextMenu(CommandID, Int32, Int32) ShowContextMenu(CommandID, Int32, Int32)

Zeigt das angegebene Kontextmenü an der angegebenen Position an.Shows the specified shortcut menu at the specified location.

Gilt für:

Siehe auch