.net 将项目放入listview中的特定组

.net 将项目放入listview中的特定组,.net,vb.net,listview,drag-and-drop,.net,Vb.net,Listview,Drag And Drop,我试图在同一ListView中的两个组之间拖动一个名为“listTasks”的项 Private Sub listTasks_ItemDrag(ByVal sender As Object, ByVal e As ItemDragEventArgs) Handles listTasks.ItemDrag listTasks.DoDragDrop(listTasks.SelectedItems, DragDropEffects.Move) End Sub Private Sub list

我试图在同一ListView中的两个组之间拖动一个名为“listTasks”的项

Private Sub listTasks_ItemDrag(ByVal sender As Object, ByVal e As ItemDragEventArgs) Handles listTasks.ItemDrag
    listTasks.DoDragDrop(listTasks.SelectedItems, DragDropEffects.Move)
End Sub

Private Sub listTasks_DragEnter(ByVal sender As Object, ByVal e As DragEventArgs) Handles listTasks.DragEnter
    e.Effect = DragDropEffects.Move
End Sub

Private Sub listTasks_DragDrop(ByVal sender As Object, ByVal e As DragEventArgs) Handles listTasks.DragDrop
    ' how do I tell what group is being dropped into?
End Sub
请注意,listTasks\u DragEnter忽略数据格式检查以简化示例


使用listTasks.PointToClient New Pointe.X,e.Y,您可以使用listTasks.GetItemAtp.X,p.Y来获取您已完成的ListView项。有这样的团体活动吗?或者是一种更好的方法来确定哪个组是拖放的目标?

您可以尝试以下方法:

Private lviDraggedItem As ListViewItem

Private Sub ListView1_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListView1.DragEnter
    e.Effect = DragDropEffects.Move
End Sub

Private Sub ListView1_DragDrop(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListView1.DragDrop

    Dim htInfo As ListViewHitTestInfo = ListView1.HitTest(ListView1.PointToClient(New Point(e.X, e.Y)))

    Dim lviSibling As ListViewItem = htInfo.Item

    Dim lvgGroup As ListViewGroup = lviSibling.Group

    lvgGroup.Items.Add(lviDraggedItem)

    lviDraggedItem = Nothing


End Sub

Private Sub ListView1_ItemDrag(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ItemDragEventArgs) Handles ListView1.ItemDrag

    lviDraggedItem = e.Item
    ListView1.DoDragDrop(ListView1.SelectedItems, DragDropEffects.Move)


End Sub

您可能想做更多的工作,将其放置在组中的特定位置,但这应该可以让您开始了。

您是先试用MSDN的吗@贾萨夫:谢谢你的链接,但是没有提到团体。我知道如何拖放。在同一ListView中加入不同组的方法之后。