如何在处理程序中的事件处理程序中传递自定义参数

时间:2018-07-19 17:50:38

标签: c# winforms datagridview datagrid

我试图从datagridview类中创建一个contextMenu,如果用户单击菜单上的选项,它将弹出一个输入窗口并根据输入更改datagridview,但是我不确定如何传递嵌套句柄中的参数。

private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
    DataGridViewCell clickedCell = (sender as DataGridView).Rows[e.RowIndex].Cells[e.ColumnIndex];
    ContextMenuStrip menu = new ContextMenuStrip();
    menu.Items.Add("Edit").Name = "edit";
    menu.Show(Cursor.Position);
    menu.ItemClicked += new ToolStripItemClickedEventHandler(menu_ItemClicked);
}

    private void menu_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
    {
        switch (e.ClickedItem.Name.ToString())
        {
            case "edit":
                string promptValue = Prompt.ShowDialog("input:", "input");
                // clickedCell.Value = ...
                // How do  I access clickedCell from the calling handler?
                break;
            default:
                break;
        }

    }

如何从调用处理程序访问clickedCell?

0 个答案:

没有答案