WinForms拖放以重新排列ListView中的多个项目

时间:2013-07-19 14:23:05

标签: .net winforms listview

我无法弄清楚如何在ListView中重新排列多个项目。这就是我处理一个项目的方式:

    protected override void OnDragDrop(DragEventArgs drgevent)
    {
            //get target index and other things

            if (drgevent.Data.GetDataPresent(typeof(ListViewItem)))
            {
                ListViewItem draggedItem = (ListViewItem)drgevent.Data.GetData(typeof(ListViewItem));
                int origIndex = draggedItem.Index;
                if (origIndex != targetIndex)
                {
                    var e = new RearrangeItemEventArgs(origIndex, targetIndex);
                    OnRearrangeItem(e);
                }
            }
    }

但即使在启用MultiSelect之后,drgevent.Data仍然只包含ListViewItem(和WindowsForms10PersistentObject,但我不知道那是什么。)

我希望它包含SelectedListViewItemCollectionListViewItemCollection,甚至ListViewItem[],但它们都不起作用。

那么我如何获得所有选定的项目,而不仅仅是其中一项呢?

0 个答案:

没有答案