[英]How to run Run CellEndEdit only when Cell ValueChanged in DataGridView
[英]How to run a code only if a Cell, not a Header, in DataGridView is doubleClicked?
private void dgv_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
foreach (DataGridViewRow r in dgv.Rows) r.Visible = false;
}
此代码有效,但如果ColumnHeaders(不仅是单元格)被双击,也可以使用吗?
我想只在双击单元格时运行它。
CellDoubleClick应该是CellDoubleClick而不是HeaderDoubleClick。
private void dgv_CellDoubleClick(object sender, DataGridViewCellEventArgs e) {
if (e.RowIndex != -1) {
//do work
}
}
您可以检查e.RowIndex
是否为-1,这意味着事件发生在标题行上。
您可以使用DataGridViewCellEventArgs.RowIndex
检查是否单击了标题或是否单击了行中的任何单元格。
不是最干净的方法,但你可以这样做
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if (((System.Windows.Forms.DataGridView)(sender)).CurrentCell != null)
{
//Do what you want here................
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.