如何从 DatagriView 按键事件执行 DatagridView 单元格单击事件


     private void item_grid_CellClick(object sender, DataGridViewCellEventArgs e)
    {
         if (e.ColumnIndex==taxone_col_index || e.ColumnIndex==taxtwo_col_index)
        {

        }
    }
    private void item_grid_KeyPress(object sender, KeyPressEventArgs e)
    {
        if (e.KeyChar == (char)Keys.Return)
        {
            e.Handled = true;
           item_grid.CellClick; // i did this but its not working            }
    }

我想从按键事件中执行单元格单击事件。怎么办?

听起来您想要的是知道按下键的单元格的行和列索引。然后,您将能够查找单元格的值。

为此,只需使用 DataGridViewCurrentCell 属性 .

试图人为地制造CellClick只是在自找麻烦。

需要注意的一点是,您可能需要处理 EditingControlShowing 事件并将KeyPress处理程序附加到基础编辑控件,因为在DataGridView单元格中键入内容不会提高事件的网格级别KeyPress


如果确实要创建CellClick事件,则需要对DataGridView控件进行子类化,并创建自己的RaiseCellClick()方法,然后调用受保护的OnCellClick()方法:

public void RaiseCellClick(int row, int column)
{
    DataGridViewCellEventArgs e = new DataGridViewCellEventArgs(row, column);
    base.OnCellClick(e);
}

但即使这样对你也没有特别帮助,因为DataGridViewCellEventArgs需要在其构造函数中获取行和列索引。

相关内容

  • 没有找到相关文章

最新更新