WPF实现拖拽功能

两个content控件之间实现拖拽功能,在一个控件中启动拖拽操作,在另一个控件中处理事件,代码如下,在两个listview之间拖拽:

//在启动拖拽控件的MouseMove事件里启动拖拽
private void listView1_MouseMove(object sender, MouseEventArgs e)
{
     if (e.LeftButton == MouseButtonState.Pressed)
     {
           ListView lv = sender as ListView;
           MyClass selectedItem = lv.SelectedItem as MyClass;
           if (selectedItem == null)
           {
               return;
           }
           DataObject dataObject = new DataObject(typeof(MyClass), selectedItem);
           DragDrop.DoDragDrop(mylistView1, dataObject, DragDropEffects.Copy);
     }
}
//在另一个控件的Drop事件的实现拖拽
private void listView2_Drop(object sender, DragEventArgs e)
{
    var data = e.Data;
    if (data.GetDataPresent(typeof(MyClass)))
    {
        var myClass = data.GetData(typeof(MyClass)) as MyClass;
        GrouViewData.AddMulGoupItemFunction(myClass);
    }
}





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值