DataGridView内添加右键菜单

1.这里用CellMouseClick鼠标点击事件

 private void DataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            //if (e.Button == MouseButtons.Left && e.Clicks == 1)
            //{
            //    MessageBox.Show("您单击了鼠标左键!");
            //}

            // 不能点击标题头(RowIndex = -1),右键,点击次数 1次
            if (e.RowIndex != -1 && e.Button == MouseButtons.Right && e.Clicks == 1)
            {
                //MessageBox.Show("您单击了鼠标右键!");
                ContextMenuStrip contextMenu = new ContextMenuStrip();   // 菜单控件
                contextMenu.Items.Add("新增");
          contextMenu.Items.Add("减少"); contextMenu.Show(MousePosition.X, MousePosition.Y); contextMenu.ItemClicked += new ToolStripItemClickedEventHandler(Add_item); // 绑定事件 } }

2.定义事件方法

void Add_item(object sender, ToolStripItemClickedEventArgs e)
        {
            // 触发后的行为
        // 当出现多个后可通过下拉Name的值判断哪个被选中,实现不同的方法
        var Name = e.ClickedItem.AccessibilityObject.Name;  // Name = "新增"/"减少"  }

  

原文地址:https://www.cnblogs.com/besos/p/13355476.html