[ContextMenuStrip][Tips] 様々なタイプのメニュー項目を使用する


コンテキストメニューに表示できる項目は「コピー(C)」のような文字列だけではありません。

コンボボックスやテキストボックス、セパレーター(分割線)といった項目も表示させることが可能です。

続きを読む

[ContextMenuStrip][Tips] メニュー項目にイメージを表示する

メニュー項目にイメージを表示する方法には大きく2つあります。

1つはファイルから読み込んで表示する方法、もう1つはImageListコントロールに設定しておいたイメージを割り当てる方法です。
続きを読む

[ContextMenuStrip][Tips] コンテキストメニューを作成する

コンテキストメニューを作成するにはContextMenuStripコントロールを使用します。

フォームにContextMenuStripコントロールを張り付け後、「ここへ入力」と書かれた場所に直接文字列を入力してメニューを作成することができます。

プロパティウィンドウのItemsプロパティ欄に表示される[…]ボタンをクリックしてメニューを作成することもできます。

コンテキストメニューに追加する項目を選択し[追加]ボタンをクリックします。その後Textプロパティにメニュー名を入力します。

コードからコンテキストメニューを作成するには、ItemsプロパティAddメソッドを使用してメニュー項目を追加します。

また、作成したコンテキストメニューはフォームやコントロールが持つContextMenuStripプロパティに設定することで使用可能になります。

VBの例

' フォームロード時の処理
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    '★★★コンテキストメニューを作成する★★★
    ContextMenuStrip1.Items.Add("コピー(&C)")
    ContextMenuStrip1.Items.Add("切り取り(&T)")
    ContextMenuStrip1.Items.Add("貼り付け(&P)")
    ContextMenuStrip1.Items.Add(New ToolStripSeparator)
    ContextMenuStrip1.Items.Add("終了(&X)")

    '★★★Form1にコンテキストメニューを設定する★★★
    Me.ContextMenuStrip = ContextMenuStrip1
End Sub

C#の例

// フォームロード時の処理
private void Form1_Load(object sender, EventArgs e)
{
    // ★★★コンテキストメニューを作成する★★★
    contextMenuStrip1.Items.Add("コピー(&C)");
    contextMenuStrip1.Items.Add("切り取り(&T)");
    contextMenuStrip1.Items.Add("貼り付け(&P)");
    contextMenuStrip1.Items.Add(new ToolStripSeparator());
    contextMenuStrip1.Items.Add("終了(&X)");

    // ★★★Form1にコンテキストメニューを設定する★★★
    this.ContextMenuStrip = contextMenuStrip1;
}