MenuCommand Класс

Определение

Представляет меню Windows или команду панели инструментов.Represents a Windows menu or toolbar command item.

public ref class MenuCommand
[System.Runtime.InteropServices.ComVisible(true)]
public class MenuCommand
type MenuCommand = class
Public Class MenuCommand
Наследование
MenuCommand
Производный
Атрибуты

Примеры

В следующем примере кода создается объект MenuCommand, настраивается его свойства и добавляется в IMenuCommandService.The following code example creates a MenuCommand object, configures its properties, and adds it to the IMenuCommandService.

Создайте экземпляр класса Component1 в форме и откройте форму в среде разработки, такой как Visual Studio.Create an instance of the Component1 class on your form and open the form in a design environment like Visual Studio. Нажмите клавишу F1, чтобы вызвать MenuCommand.Press the F1 key to invoke the 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();
        }
    }

    [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.");
        }
    }
} 
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

Комментарии

Класс MenuCommand представляет сведения о меню или команде панели инструментов Windows.The MenuCommand class represents information about a Windows menu or toolbar command. Интерфейс IMenuCommandService позволяет добавлять MenuCommand объекты в меню Visual Studio.The IMenuCommandService interface allows you to add MenuCommand objects to the Visual Studio menu.

Этот класс предоставляет следующие члены:This class provides the following members:

  • Свойство обработчика событий, к которому можно присоединить обработчик событий для команды.An event-handler property to which you can attach an event handler for the command.

  • Свойство CommandID, уникально идентифицирующее команду.A CommandID property that uniquely identifies the command.

  • Метод Invoke, выполняющий команду.An Invoke method that executes the command.

  • Метод OnCommandChanged, который можно переопределить для выполнения события, возникающего при выборе новой команды.An OnCommandChanged method that can be overridden to handle the event that occurs when a new command is selected.

  • Состояния логических флагов, которые указывают, является ли команда Checked, Enabled, Supportedили Visible.Boolean flag states that indicate whether the command is Checked, Enabled, Supported, or Visible.

  • Свойство OleStatus, указывающее код состояния команды OLE для команды.An OleStatus property that indicates the OLE command status code for the command.

  • Переопределение метода ToString.An override for the ToString method.

Конструкторы

MenuCommand(EventHandler, CommandID)

Инициализирует новый экземпляр класса MenuCommand.Initializes a new instance of the MenuCommand class.

Свойства

Checked

Получает или задает значение, указывающее, отмечена ли данная команда меню.Gets or sets a value indicating whether this menu item is checked.

CommandID

Получает идентификатор CommandID, связанный с данной командой меню.Gets the CommandID associated with this menu command.

Enabled

Получает значение, показывающее, доступна ли данная команда меню.Gets a value indicating whether this menu item is available.

OleStatus

Получает код состояния команды OLE для данной команды меню.Gets the OLE command status code for this menu item.

Properties

Возвращает открытые свойства, сопоставленные объекту MenuCommand.Gets the public properties associated with the MenuCommand.

Supported

Получает или задает значение, показывающее, поддерживается ли данная команда меню.Gets or sets a value indicating whether this menu item is supported.

Visible

Возвращает или задает значение, указывающее, отображается ли данная команда меню.Gets or sets a value indicating whether this menu item is visible.

Методы

Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
Invoke()

Вызывает команду.Invokes the command.

Invoke(Object)

Вызывает команду с заданным параметром.Invokes the command with the given parameter.

MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
OnCommandChanged(EventArgs)

Вызывает событие CommandChanged.Raises the CommandChanged event.

ToString()

Возвращает строковое представление данной команды меню.Returns a string representation of this menu command.

События

CommandChanged

Возникает при изменении команды меню.Occurs when the menu command changes.

Безопасность

NamedPermissionSet
для полного доступа к системным ресурсам.for full access to system resources. Значения спроса: LinkDemand, InheritanceDemand.Demand values: LinkDemand, InheritanceDemand. Связанное состояние:Associated state:

Применяется к

Дополнительно