如何在整个DataGridView的CellClick事件的DataGridViewButtonColumn上分离CellClick?

时间:2013-05-01 20:38:37

标签: c# .net winforms

我正在用C#和windows表单编写程序,我遇到了问题。

我有DataGridView我在不同的列中显示数据,我添加了DataGridViewButtonColumn。问题是我需要在整个CellClick事件的DataGridViewButtonColumn上分隔DataGridView.CellClick事件。要恢复我想在数据网格中单击按钮时调用不同的函数,而不是单击其他单元格。

提前致谢。

1 个答案:

答案 0 :(得分:2)

the MSDN article开始,处理CellClick事件

    dataGridView1.CellClick +=
        new DataGridViewCellEventHandler(dataGridView1_CellClick);

从那里,检查列号是否符合预期。

void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
    // Ignore clicks that are not on button cells.  
    if (e.RowIndex < 0 || e.ColumnIndex !=
        dataGridView1.Columns["Status Request"].Index) return;
    ....
}

显然,将您自己的列名替换为“状态请求”,或者只使用索引值。没有办法(据我所知)直接将一个事件附加到按钮,因为它嵌入的按钮不是一个真正的“按钮”对象,而只是一个GUI技巧,使它看起来像一个,所以你唯一能做的就是do是检查列索引。