我正在两个数据网格视图之间实现拖放功能。这可以按预期工作,但有一个例外:可以在同一个 datagridview 中拖放。这会导致重复的行。我想限制功能,以便我只能从一个 datagridview 拖动到另一个。有谁知道如何做到这一点?我猜需要某种命中测试,但我不知道如何实现这个......
我正在使用的代码如下:
Private Sub dgvFMAvailable_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles dgvFMAvailable.MouseMove
If e.Button = Windows.Forms.MouseButtons.Left Then
Me.dgvFMAvailable.DoDragDrop(Me.dgvFMAvailable.SelectedRows, DragDropEffects.Move)
End If
End Sub
和
Private Sub dgvFMSelected_DragDrop(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles dgvFMSelected.DragDrop
Try
Me.SelectFM(CType(e.Data.GetData(GetType(DataGridViewSelectedRowCollection)), DataGridViewSelectedRowCollection))
Finally
e.Effect = DragDropEffects.None
End Try
End Sub