DEV gridview 捕获行双击事件
原创
©著作权归作者所有:来自51CTO博客作者jiankunking的原创作品,请联系作者获取转载授权,否则将追究法律责任
private void ViewHtlb_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left && e.Clicks == 2) // 判断是否是用鼠标双击
{
DevExpress.XtraGrid.Views.Grid.ViewInfo.GridHitInfo ghi = ViewHtlb.CalcHitInfo(new Point(e.X, e.Y));
if (ghi.InRow) // 判断光标是否在行内
{
MessageBox.Show("已经双击!");
}
}
}
增加改方法的位置:
那么该方法与
private void grid1_DoubleClick(object sender, EventArgs e)
有什么区别呢?
grid1_DoubleClick(object sender, EventArgs e)函数会捕获整个grid的双击事件而不仅仅是双击列表行事件,比如:你双击表头、列表展示数据的下方的空白部分都会引发grid1_DoubleClick(object sender, EventArgs e)函数,而ViewHtlb_MouseDown(object sender, MouseEventArgs e)函数此时不会被激活。
作者:jiankunking