以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]listview拖动问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94316)

--  作者:kaiyu
--  发布时间:2016/12/21 9:46:00
--  [求助]listview拖动问题

我想一个listview控件里面只显示一条记录,如果是从其它地方拖过来的,则删除原来,用拖过来的替换掉原来的

我在BeforeDropRow事件中写了以下代码,拖过去就变为空了

 

 Dim lvw As WinForm.ListView = e.Sender
If lvw.Rows.Count > 0  Then
    lvw.Rows(0).Delete
   e.Add = True
End If

请问这如何修改一下,才能达到拖动过来的替换原来的


--  作者:有点色
--  发布时间:2016/12/21 10:28:00
--  

参考代码

 


Dim lvw As WinForm.ListView = e.Sender
Dim lvwSource = e.Source.basecontrol
Dim itm = lvwSource.items(e.OldIndex) \'获取要拖动过来的行
If e.Source.Name <> e.Sender.Name Then \'如果是从其他ListView中拖动过来的
    e.Add = False
    Dim nitm = itm.clone
    lvw.Rows(0).Delete
    Dim b = e.sender.basecontrol
    b.items.Insert(0,nitm)
End If