Menus and Toolbars for WinForms
サブメニューの追加
タスク別ヘルプ > C1MainMenu のタスク > サブメニューの追加

サブメニューをデザイナまたはコードで追加することができます。下記のリンクをクリックしてそれぞれの手順を参照できます。

設計時にサブメニューを追加する

新しいコマンドリンクを現在選択されているコマンドリンクによってリンクされたメニュー(C1CommandMenu または C1ContextMenu)に追加するには、以下の手順を実行します。

注意:現在のコマンドリンクがC1CommandMenuまたは C1ContextMenuタイプのコマンドにリンクされていない場合、この項目は無効です。
  1. C1MainMenu の既存のメニュー項目を右クリックし、コンテキストメニューから[子項目の追加]を選択します。
    コマンドにリンクする]デザイナが表示されます。
  2. テキスト]テキストボックスフィールドに[サブメニュー1]を入力し、〈OK〉を選択します。メニューは次のように表示されます。

プログラムによるサブメニューを追加する

プログラムで C1CommandHolder を追加するには、メニュー項目を作成し、次にサブメニュー項目を作成する必要があります。それには、次の手順に従います。

  1. C1.Win.C1Command 名前空間をプロジェクトの参照に追加します。
  2. ソースファイルで名前空間を宣言します。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Imports C1.Win.C1Command
    

    C# コードの書き方

    C#
    コードのコピー
    using C1.Win.C1Command
    
  3. フォームをダブルクリックして Form_Load イベントのハンドラーを作成します。そして、イベントハンドラーに以下の手順にあるサンプルコードを追加します。
  4. メニューを保持する C1CommandHolder を追加し、新しいメインメニューを作成します。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Dim ch As C1CommandHolder = C1CommandHolder.CreateCommandHolder(Me)
    Dim mm As New C1MainMenuim
    

    C# コードの書き方

    C#
    コードのコピー
    C1CommandHolder ch = C1CommandHolder.CreateCommandHolder(this)
    C1MainMenu mm = new C1MainMenu();
    
  5. フォームにメインメニューコントロールを追加し、コマンドを保持するメインメニューを作成した後で、新しいメニューの Text プロパティを設定します。 

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Me.Controls.Add(mm)
    Dim mmenu As C1CommandMenu = CType(ch.CreateCommand(GetType(C1CommandMenu))
    mmenu.Text = "メニュー1(&M)"
    

    C# コードの書き方

    C#
    コードのコピー
    this.Controls.Add(mm)
    C1CommandMenu mmenu = ch.CreateCommand(typeof(C1CommandMenu)) as C1CommandMenu;
    mmenu.Text = "メニュー1(&M)"
    
  6. 新しいメインメニューにコマンドリンクを追加した後で、「メニュー1」の下にメニュー項目を作成して設定します。メニューにコマンドを入れます。 

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    mm.CommandLinks.Add(New C1CommandLink(mmenu))
    Dim submenu As C1Command = ch.CreateCommand()
    

    C# コードの書き方

    C#
    コードのコピー
    mm.CommandLinks.Add(new C1CommandLink(mmenu));
    C1Command submenu = ch.CreateCommand();
    
  7. 新しいサブメニュー項目にテキストを追加し、サブメニュー項目に新しい

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    submenu.Text = "submmenu 1"
    'サブメニュー項目に新しい c1commandlink を追加します。 
    mmenu.CommandLinks.Add(New C1CommandLink(submenu))
    

    C# コードの書き方

    C#
    コードのコピー
    submenu.Text = "submenu 1";
    //サブメニュー項目に新しい c1commandlink を追加します。
    mmenu.CommandLinks.Add(new C1CommandLink(submenu))
    

    メニューは、次の図のように表示されます。
関連トピック