C# のアイテムに右クリック メニューを追加する

Muhammad Zeeshan 2023年10月12日
C# のアイテムに右クリック メニューを追加する

この記事では、C# Windows フォームのアイテムに右クリック メニューを追加する方法について説明します。

C#ContextMenuStrip を使用する

以下の手順に従って、ContextMenuStrip を Windows フォームに追加し、その項目を追加します。

  • Visual Studio を開き、既存の Windows Form プロジェクトを作成または開きます。
  • View > ToolBox に移動し、ToolBox を検索して ContextMenuStrip と入力します。
  • ツールボックスのContextMenuStripをダブルクリックします。
  • 以下に示すように、フォームに ContextMenuStrip が追加されます。

    コンテキスト メニューの追加

  • 次に、ContextMenuStripを右クリックして、プロパティをクリックします。

    コンテキスト メニューのプロパティ

  • 右下のプロパティ パネルで、Items を見つけて、3つのドットのオプションをクリックします。

    プロパティ パネルで項目を検索

  • 次に、下の 3つのアイテムを追加したので、[追加] ボタンをクリックしてアイテムを追加します。

    コンテキスト メニューに項目を追加

  • 各項目をダブルクリックして項目 イベント を作成します。

    イベントの作成

  • Windows フォーム > プロパティ を右クリックし、ContextMenuStrip プロパティを contextMenuStrip1 に設定します。

    ContextMenuStrip プロパティの設定

  • ロジックを記述するイベントを作成したら、ここにコードを記述できるように空白のままにします。
    private void toolStripMenuItem1_Click(object sender, EventArgs e) {}
    private void toolStripMenuItem2_Click(object sender, EventArgs e) {}
    private void exitToolStripMenuItem_Click(object sender, EventArgs e) {}
    

ウィンドウフォームのソースコード:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace RightClickItemByZeeshan {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e) {}

    private void toolStripMenuItem1_Click(object sender, EventArgs e) {}

    private void toolStripMenuItem2_Click(object sender, EventArgs e) {}

    private void exitToolStripMenuItem_Click(object sender, EventArgs e) {
      Application.Exit();
    }
  }
}

出力:

アイテムに右クリックメニューを追加

Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

関連記事 - Csharp GUI