C# DataGridView添加右键菜单

右键点击行时选中行,并弹出操作菜单

(1). 添加一个快捷菜单contextMenuStrip1;
(2). 给dataGridView1的CellMouseDown事件添加处理程序:

程序代码

private void DataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
 if (e.Button==MouseButtons.Right) 
    {
        if (e.RowIndex >= 0)
          {
            //若行已是选中状态就不再进行设置
            if (dataGridView1.Rows[e.RowIndex].Selected== false)
            {
                dataGridView1.ClearSelection();
                dataGridView1.Rows[e.RowIndex].Selected = true;
            }
            //只选中一行时设置活动单元格
            if (dataGridView1.SelectedRows.Count == 1)
            {
                dataGridView1.CurrentCell = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];
            }
            //弹出操作菜单
            contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);
        }
    }
}

效果图:

在这里插入图片描述