Sdílet prostřednictvím


MenuCommand Třída

Definice

Představuje nabídku Windows nebo položku příkazu panelu nástrojů.

public ref class MenuCommand
public class MenuCommand
[System.Runtime.InteropServices.ComVisible(true)]
public class MenuCommand
type MenuCommand = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type MenuCommand = class
Public Class MenuCommand
Dědičnost
MenuCommand
Odvozené
Atributy

Příklady

Následující příklad kódu vytvoří MenuCommand objekt, nakonfiguruje jeho vlastnosti a přidá ho IMenuCommandServicedo .

Vytvořte instanci třídy ve Component1 formuláři a otevřete formulář v návrhovém prostředí, jako je Visual Studio. Stisknutím klávesy F1 vyvoláte klávesu MenuCommand.

#using <system.dll>
#using <system.design.dll>
#using <system.windows.forms.dll>

using namespace System;
using namespace System::ComponentModel;
using namespace System::ComponentModel::Design;
using namespace System::Security::Permissions;

namespace CppMenuCommand
{
   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." );
      }
   };
}
using System;
using System.ComponentModel;
using System.ComponentModel.Design;

namespace CSMenuCommand
{
    [Designer(typeof(CDesigner))]
    public class Component1 : System.ComponentModel.Component
    {
        private System.ComponentModel.Container components = null;

        public Component1(System.ComponentModel.IContainer container)
        {
            container.Add(this);
            InitializeComponent();
        }

        public Component1()
        {
            InitializeComponent();
        }

        private void InitializeComponent()
        {
            components = new System.ComponentModel.Container();
        }
    }

    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.");
        }
    }
}
Imports System.ComponentModel
Imports System.ComponentModel.Design

Namespace VbMenuCommand
    <Designer(GetType(CDesigner))> _
    Public Class Component1
        Inherits System.ComponentModel.Component
        Private components As System.ComponentModel.Container = Nothing

        Public Sub New(ByVal container As System.ComponentModel.IContainer)
            container.Add(Me)
            InitializeComponent()
        End Sub

        Public Sub New()
            InitializeComponent()
        End Sub

        Private Sub InitializeComponent()
        End Sub
    End Class

    <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
End Namespace

Poznámky

Třída MenuCommand představuje informace o nabídce systému Windows nebo příkazu panelu nástrojů. Rozhraní IMenuCommandService umožňuje přidat MenuCommand objekty do nabídky sady Visual Studio.

Tato třída poskytuje následující členy:

  • Vlastnost obslužné rutiny události, ke které můžete připojit obslužnou rutinu události pro příkaz.

  • Vlastnost CommandID , která jednoznačně identifikuje příkaz.

  • Metoda Invoke , která spustí příkaz.

  • Metoda OnCommandChanged , která se dá přepsat pro zpracování události, která nastane při výběru nového příkazu.

  • Logický příznak uvádí, zda je Checkedpříkaz , Enabled, Supportednebo Visible.

  • OleStatus Vlastnost, která označuje stavový kód příkazu OLE pro příkaz.

  • Přepsání metody ToString .

Konstruktory

Name Description
MenuCommand(EventHandler, CommandID)

Inicializuje novou instanci MenuCommand třídy.

Vlastnosti

Name Description
Checked

Získá nebo nastaví hodnotu určující, zda je tato položka nabídky zaškrtnutá.

CommandID

Získá přidružené k CommandID tomuto příkazu nabídky.

Enabled

Získá hodnotu určující, zda tato položka nabídky je k dispozici.

OleStatus

Získá stavový kód příkazu OLE pro tuto položku nabídky.

Properties

Získá veřejné vlastnosti přidružené k .MenuCommand

Supported

Získá nebo nastaví hodnotu určující, zda je tato položka nabídky podporována.

Visible

Získá nebo nastaví hodnotu označující, zda je tato položka nabídky viditelná.

Metody

Name Description
Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
Invoke()

Vyvolá příkaz.

Invoke(Object)

Vyvolá příkaz s daným parametrem.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
OnCommandChanged(EventArgs)

CommandChanged Vyvolá událost.

ToString()

Vrátí řetězcovou reprezentaci tohoto příkazu nabídky.

Událost

Name Description
CommandChanged

Nastane, když se příkaz nabídky změní.

Platí pro

Viz také