次の方法で共有


MenuCommand クラス

定義

Windows メニューまたはツール バーのコマンド項目を表します。

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
継承
MenuCommand
派生
属性

次のコード例では、 オブジェクトを MenuCommand 作成し、そのプロパティを構成し、 に追加します IMenuCommandService

フォーム上に Component1 クラスのインスタンスを作成し、Visual Studio などのデザイン環境でフォームを開きます。 F1 キーを押して を呼び出します 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

注釈

クラスは MenuCommand 、Windows メニューまたはツール バー コマンドに関する情報を表します。 IMenuCommandServiceインターフェイスを使用すると、Visual Studio メニューにオブジェクトを追加MenuCommandできます。

このクラスは、次のメンバーを提供します。

  • コマンドのイベント ハンドラーをアタッチできるイベント ハンドラー プロパティ。

  • CommandIDコマンドを一意に識別するプロパティ。

  • Invokeコマンドを実行するメソッド。

  • OnCommandChanged新しいコマンドが選択されたときに発生するイベントを処理するためにオーバーライドできるメソッド。

  • ブール型フラグはCheckedEnabledSupported、コマンドが 、または Visibleであるかどうかを示す状態です。

  • コマンドの OleStatus OLE コマンドの状態コードを示す プロパティ。

  • メソッドの ToString オーバーライド。

コンストラクター

MenuCommand(EventHandler, CommandID)

MenuCommand クラスの新しいインスタンスを初期化します。

プロパティ

Checked

メニュー項目がチェックされているかどうかを示す値を取得または設定します。

CommandID

メニュー コマンドに関連付けられている CommandID を取得します。

Enabled

メニュー項目を使用できるかどうかを示す値を取得します。

OleStatus

メニュー項目の OLE コマンド ステータス コードを取得します。

Properties

MenuCommand に関連付けられているパブリック プロパティを取得します。

Supported

メニュー項目がサポートされているかどうかを示す値を取得または設定します。

Visible

メニュー項目を表示するかどうかを示す値を取得または設定します。

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
Invoke()

コマンドを呼び出します。

Invoke(Object)

指定したパラメーターを使用して、コマンドが呼び出されます。

MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
OnCommandChanged(EventArgs)

CommandChanged イベントを発生させます。

ToString()

メニュー コマンドの文字列形式を返します。

イベント

CommandChanged

メニュー コマンドが変更されたときに発生します。

適用対象

こちらもご覧ください