以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  求助listview控件行增减或内容变更的事件  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=149855)

--  作者:wfkbabro
--  发布时间:2020/5/13 21:47:00
--  求助listview控件行增减或内容变更的事件

看foxtable帮助和看MSDN类都没找到,用TextChanged事件也没成功。

在此求助,谢谢。

相关:

Dim ct As New system.Windows.Forms.Listview
ct = Forms("窗口6_文档管理").Controls("Listview1").basecontrol
AddHandler ct.Textchanged, AddressOf PSub_全局绑定函数

 

ListView 类 (System.Windows.Forms) | Microsoft Docs  https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.forms.listview?view=netcore-3.1


--  作者:有点蓝
--  发布时间:2020/5/14 8:52:00
--  
没有这种事件。增减或内容变更都是外部控制的,外部控制的地方调用相关的代码即可。

比如某个删除按钮
删除

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim
 vr As WinForm.ListViewRow = lvw.Current \'获取ListView中选定的行
If
 vr Is Nothing Then \'如果不存在当前行,也就是内有选定任何一行
    Return

End
 If
Dim
 dr As DataRow = vr.tag \'获取此行对应的DataRow
dr
.Delete \'DataTable删除行
vr
.Delete \'从ListView删除行

在这里加上想要放到删除事件里的代码


--  作者:wfkbabro
--  发布时间:2020/5/14 22:17:00
--  
以下是引用有点蓝在2020/5/14 8:52:00的发言:
没有这种事件。增减或内容变更都是外部控制的,外部控制的地方调用相关的代码即可。

比如某个删除按钮
删除

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim
 vr As WinForm.ListViewRow = lvw.Current \'获取ListView中选定的行
If
 vr Is Nothing Then \'如果不存在当前行,也就是内有选定任何一行
    Return

End
 If
Dim
 dr As DataRow = vr.tag \'获取此行对应的DataRow
dr
.Delete \'DataTable删除行
vr
.Delete \'从ListView删除行

在这里加上想要放到删除事件里的代码

 

谢谢蓝版,我是在做拖动文件上传并自动识别文件名后填充相关信息。

用拖动事件获取文件名是通过如下代码实现的,目前实现了拖动识别文件全路径,但不知道用什么办法监测listview内容变化了。

   Dim ListView1 As WinForm.ListView = Forms(t2).Controls("ListView1")
   ListView1.BaseControl.AllowDrop = True
   AddHandler ListView1.BaseControl.DragEnter, AddressOf PublicF_ListBox1_DragEnter  \'PublicF_开头的函数在全局代码里写了。
   AddHandler ListView1.BaseControl.DragDrop, AddressOf PublicF_ListBox1_DragDrop


--  作者:有点蓝
--  发布时间:2020/5/14 22:40:00
--  
直接在拖动事件里处理
--  作者:wfkbabro
--  发布时间:2020/5/15 9:10:00
--  
以下是引用有点蓝在2020/5/14 22:40:00的发言:
直接在拖动事件里处理

好的,谢谢。