private void dgv_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
foreach (DataGridViewRow r in dgv.Rows) r.Visible = false;
}
此代码有效,但如果ColumnHeaders(不仅是单元格)被双击,也可以使用吗? 我想在双击单元格时运行它 CellDoubleClick应该是CellDoubleClick而不是HeaderDoubleClick。
答案 0 :(得分:21)
private void dgv_CellDoubleClick(object sender, DataGridViewCellEventArgs e) {
if (e.RowIndex != -1) {
//do work
}
}
答案 1 :(得分:3)
您可以检查e.RowIndex
是否为-1,这意味着事件发生在标题行上。
答案 2 :(得分:2)
您可以使用DataGridViewCellEventArgs.RowIndex
检查是否单击了标题,或者是否单击了行中的任何单元格。
答案 3 :(得分:1)
不是最干净的方法,但你可以像这样做到
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if (((System.Windows.Forms.DataGridView)(sender)).CurrentCell != null)
{
//Do what you want here................
}
}