Code Bye

listview 数据拖入 datagridview 时如果获得鼠标所在的单元格

listview中将数据拖拽入datagridview中,当鼠标移动至datagridview目标单元格时,如果获取当前单元格的索引

 

30分
dataGridView1.HitTest(x,y).RowIndex
dataGridView1.HitTest(x,y).ColumnIndex
引用 5 楼 Z65443344 的回复:
Quote: 引用 3 楼 xiao198766 的回复:

fieldset>

Quote: 引用 2 楼 bdmh 的回复:

dataGridView1.HitTest(x,y).RowIndex
dataGridView1.HitTest(x,y).ColumnIndex

这样是可以得到,但是不知道为什么,每次获取到的都是很奇怪的行和列索引,并不是实际的。

我猜你传入的x和y坐标是工作区坐标,并不是dataGridView1这个控件的内部相对坐标
是的,dataGridView 的DragDrop(object sender, DragEventArgs e)事件,e.x以及e.y的确是屏幕的坐标,敢问如何获取控件的相对坐标
/div>


10分
用PointToClient和PointToScreen转换坐标
引用 7 楼 Z65443344 的回复:

用PointToClient和PointToScreen转换坐标

thank you。解决问题了,坐标转换后做个判断就可以拖入到单元格了。
 if (hit.Type == DataGridViewHitTestType.Cell)
  {
}


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明listview 数据拖入 datagridview 时如果获得鼠标所在的单元格