using System; using System.Windows.Forms; public class MyForm : Form { private ListBox listBox; private ContextMenuStrip contextMenuStrip; public MyForm() { listBox = new ListBox(); contextMenuStrip = new ContextMenuStrip(); // 添加菜單項目 ToolStripMenuItem addItem = new ToolStripMenuItem("Add"); ToolStripMenuItem deleteItem = new ToolStripMenuItem("Delete"); // 將菜單項目添加到 ContextMenuStrip contextMenuStrip.Items.Add(addItem); contextMenuStrip.Items.Add(deleteItem); // 將 ContextMenuStrip 關聯到 ListBox listBox.ContextMenuStrip = contextMenuStrip; // 設置事件處理 listBox.MouseDown += ListBox_MouseDown; // 添加 ListBox 到窗體 listBox.Dock = DockStyle.Fill; this.Controls.Add(listBox); // 添加一些示例項目 listBox.Items.Add("Item 1"); listBox.Items.Add("Item 2"); listBox.Items.Add("Item 3"); } private void ListBox_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { // 獲取選中的項目 int index = listBox.IndexFromPoint(e.Location); if (index != -1) // 有選中項目 { contextMenuStrip.Items[1].Visible = true; // 顯示 Delete } else // 沒有選中項目 { contextMenuStrip.Items[1].Visible = false; // 隱藏 Delete } } } [STAThread] static void Main() { Application.EnableVisualStyles(); Application.Run(new MyForm()); } }