我想使用两个Listviews(AllListView和PreListView)之间的拖放。这是我没走多远:Listviews和拖放在C#
在该AllListView装满物品的功能,我用类似的东西assosiate的myCustomDataObject到单个ListViewItem的:
ListViewItem newItem = new ListViewItem();
newItem.Text = myCustomDataObject.getName();
newItem.Tag = myCustomDataObject;
lst_All.Items.Add(newItem);
有我的事件处理程序2名列表视图:
AllListView:
private void OnAllDragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.All;
// How Do I add my CustomDataObject?
}
private void OnAllItemDrag(object sender, ItemDragEventArgs e)
{
base.DoDragDrop(lst_All.SelectedItems[0], DragDropEffects.Move);
// Do I have to Do something to pass my CustomDataObject?
}
PreListView:
private void OnPreDragEnter(object sender, DragEventArgs e)
{
//If there one of myCustomDataObject go on
e.Effect = DragDropEffects.Move;
}
private void OnPreDragDrop(object sender, DragEventArgs e)
{
// Get Here myCustomDataObject to generate the new Item
lst_Pre.Items.Add("Done...");
}
所以我的问题是,如何实现myCustomDataObject在“OnPreDragDrop”中找到。我已经尝试了e.Data.Getdata()和e.Data.Setdata()的许多版本,但我没有太多的了解。
**谢谢!!! – Tagamoga