首页 > 代码库 > DevExpress的GridControl拖拽DraopDown后计算HitInfo的RowHandle错误

DevExpress的GridControl拖拽DraopDown后计算HitInfo的RowHandle错误

  最近在使用GridControl的拖拽功能时候遇到了一个问题:当GridControl触发DropDrop事件时,计算对应的RowHandle错误。当把鼠标拖拽到GridView一个单元格的靠上面的部分时,显示为较小的一个RowHandle;当拖拽到单元格靠下面的部分的时候,显示为较大的一个RowHandle;而且两个RowHandle的值都不对。

  经在网上查资料得到如下解决办法(DevExpress版本11.2):

  

技术分享
private void gridControl1_DragDrop(object sender, DragEventArgs e)        {            GridControl grid = sender as GridControl;            Point pt = grid.PointToClient(new Point(e.X, e.Y));            GridView view = grid.GetViewAt(pt) as GridView;            if (view == null)                return;            GridHitInfo hitInfo = gridView1.CalcHitInfo(pt);            if (hitInfo.InRowCell)                MessageBox.Show(hitInfo.RowHandle.ToString() + "----" + hitInfo.RowHandle.ToString());
View Code

  

  至于为啥这么做,还不到原因  :-D

DevExpress的GridControl拖拽DraopDown后计算HitInfo的RowHandle错误