IMenuCommandService Interfaccia

Definizione

Fornisce metodi per gestire i verbi di progettazione globali e i comandi di menu disponibili in modalità progettazione e per visualizzare alcuni tipi di menu di scelta rapida.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
Derivato
Attributi

Esempi

In questo esempio viene illustrato IMenuCommandService l'utilizzo di MenuCommandper aggiungere un.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

Commenti

Questa interfaccia fornisce i metodi per:This interface provides methods to:

  • Trovare, richiamare, aggiungere e rimuovere comandi del verbo di progettazione globali.Find, invoke, add and remove global designer verb commands.

  • Trovare, richiamare, aggiungere e rimuovere i comandi di menu standard.Find, invoke, add and remove standard menu commands.

  • Modificare i gestori eventi associati ai comandi di menu standard.Alter the event handlers associated with standard menu commands.

  • Visualizza un menu di scelta rapida dei comandi standard che è associato a CommandIDun menu.Display a shortcut menu of standard commands that is associated with a menu CommandID.

I verbi della finestra di progettazione rappresentano comandi personalizzati, elencati nel menu di scelta rapida in modalità progettazione.Designer verbs represent custom-defined commands that are listed on the shortcut menu in design mode. Un verbo di progettazione può fornire un'etichetta di testo specificata.A designer verb can provide a specified text label. A ogni verbo di progettazione viene assegnato automaticamente CommandIDun univoco.Each designer verb is automatically assigned a unique CommandID. Una finestra di progettazione può fornire verbi di progettazione Verbs tramite la relativa proprietà, ma sono disponibili solo quando il componente della finestra di progettazione è attualmente selezionato.A designer can provide designer verbs through its Verbs property, but these are only available when the designer's component is currently selected. I verbi di progettazione globali sono comandi verbo di progettazione a cui è possibile accedere da un menu di scelta rapida in modalità progettazione indipendentemente dal componente selezionato.Global designer verbs are designer verb commands that can be accessed from a design-mode shortcut menu regardless of the selected component. Questa interfaccia consente di gestire il set di verbi di progettazione globali disponibili in modalità progettazione.This interface allows you to manage the set of global designer verbs that are available in design mode.

È possibile aggiungere un verbo di progettazione globale usando AddVerb il metodo ed è possibile rimuovere un verbo di progettazione globale usando RemoveVerb il metodo.You can add a global designer verb using the AddVerb method, and you can remove a global designer verb using the RemoveVerb method. È possibile richiamare un verbo di progettazione usando GlobalInvoke il metodo se si conosce CommandID l'oggetto del verbo.You can invoke a designer verb using the GlobalInvoke method if you know the CommandID of the verb. La Verbs proprietà di questa interfaccia contiene il set corrente di comandi dei verbi di progettazione da visualizzare in un menu di scelta rapida.The Verbs property of this interface contains the current set of designer verb commands to display in a shortcut menu. Questo set di comandi per i verbi della finestra di progettazione è costituito da tutti i verbi della finestra di progettazione globali e da eventuali verbi di progettazione offerti dalla finestra di progettazione di qualsiasi componente attualmente selezionato.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. Questo set di verbi viene aggiornato ogni volta che viene selezionato o deselezionato un componente con una finestra di progettazione che offre comandi dei verbi di progettazione.This set of verbs is updated each time a component with a designer offering designer verb commands is selected or deselected.

I comandi di menu sono limitati al set di comandi standard predefiniti.Menu commands are limited to the set of predefined standard commands. La maggior parte dei comandi standard predefiniti è definita nelle StandardCommands enumerazioni e. MenuCommandsMost of the predefined standard commands are defined in the StandardCommands and MenuCommands enumerations. È possibile aggiungere, rimuovere e richiamare i comandi di menu e cercare i comandi di menu aggiunti a un menu usando i metodi di questa interfaccia.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.

È possibile aggiungere un comando di menu standard usando AddCommand il metodo e rimuovere un comando di menu standard usando RemoveCommand il metodo.You can add a standard menu command using the AddCommand method, and remove a standard menu command using the RemoveCommand method. È possibile allegare un gestore eventi a un comando di menu standard predefinito attenendosi alla procedura descritta nella documentazione relativa AddCommand al metodo.You can attach an event handler to a predefined standard menu command by following the procedure detailed in the documentation for the AddCommand method. È possibile recuperare un comando di menu CommandID da se è stato aggiunto a un menu usando il FindCommand metodo.You can retrieve a menu command by CommandID if it has been added to a menu using the FindCommand method. È possibile richiamare un comando di menu o un verbo di CommandID progettazione utilizzando GlobalInvoke il metodo.You can invoke a menu command or designer verb command by CommandID using the GlobalInvoke method.

Nota

Un tentativo di aggiungere un comando di menu con un oggetto CommandID già esistente genererà un' InvalidOperationExceptionoperazione.An attempt to add a menu command with an already existing CommandID will throw an InvalidOperationException. Quando si aggiunge un comando di menu, verificare che non sia già presente in un menu che utilizza il FindCommand metodo oppure utilizzare la gestione delle eccezioni in modo oculato.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.

Nota

È possibile aggiungere un comando di menu a un menu e impostare le Visible proprietà Enabled o su false.A menu command can be added to a menu, and have its Visible or Enabled properties set to false. Se non è possibile individuare visivamente un comando di menu che è stato aggiunto in un menu, è possibile che una di queste proprietà falsesia stata impostata su.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.

È possibile visualizzare alcuni menu di scelta rapida standard contenenti i comandi di menu in una ShowContextMenu posizione specificata usando il metodo.You can show certain standard shortcut menus containing menu commands at a specified location using the ShowContextMenu method. La documentazione relativa a questo metodo contiene una tabella che elenca gli ID di comando che specificano i menu validi da visualizzare.The documentation for this method contains a table listing the command IDs that specify the valid menus to show.

Proprietà

Verbs

Ottiene un insieme dei verbi di progettazione attualmente disponibili.Gets a collection of the designer verbs that are currently available.

Metodi

AddCommand(MenuCommand)

Aggiunge al menu il comando di menu standard specificato.Adds the specified standard menu command to the menu.

AddVerb(DesignerVerb)

Aggiunge il verbo di progettazione specificato al gruppo di verbi di progettazione globali.Adds the specified designer verb to the set of global designer verbs.

FindCommand(CommandID)

Cerca l'ID del comando specificato e restituisce il comando di menu ad esso associato.Searches for the specified command ID and returns the menu command associated with it.

GlobalInvoke(CommandID)

Richiama un menu o un comando di verbo di progettazione corrispondente all'ID di comando specificato.Invokes a menu or designer verb command matching the specified command ID.

RemoveCommand(MenuCommand)

Rimuove dal menu il comando di menu standard specificato.Removes the specified standard menu command from the menu.

RemoveVerb(DesignerVerb)

Rimuove il verbo di progettazione specificato dall'insieme dei verbi di progettazione globali.Removes the specified designer verb from the collection of global designer verbs.

ShowContextMenu(CommandID, Int32, Int32)

Visualizza il menu di scelta rapida specificato nella posizione indicata.Shows the specified shortcut menu at the specified location.

Si applica a

Vedi anche