Foxtable(狐表)用户栏目专家坐堂 → 双击ListView 行,怎么不弹窗口?


  共有2925人关注过本帖树形打印复制链接

主题:双击ListView 行,怎么不弹窗口?

帅哥哟,离线,有人找我吗?
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107730 积分:547983 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/17 17:28:00 [显示全部帖子]

没有给tag赋值

For Each dr As DataRow In DataTables("表A").DataRows '从数据表中提取数据
    Dim vr As  WinForm.ListViewRow =  lvw.Rows.Add() '增加一行
    vr.tag = dr

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107730 积分:547983 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/17 20:14:00 [显示全部帖子]

1楼不就是这样用的吗

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107730 积分:547983 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/17 20:34:00 [显示全部帖子]

窗口肯定要打开才能使用里面的控件呀,如果已经打开,直接使用即可

Forms("窗口2").Controls("Label1").text = Tables(n).Current(5)

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107730 积分:547983 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/17 20:56:00 [显示全部帖子]

改回1楼的用法即可。

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107730 积分:547983 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/17 21:07:00 [显示全部帖子]

1楼项目按2楼的说明改啊,窗口afterload事件,给每一个新增的行加上tag值啊

 vr.tag = dr

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107730 积分:547983 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/17 21:39:00 [显示全部帖子]

就是因为新增行的时候没有处理好,所以才导致双击显示窗口有问题呀!

流水线上任何一个环节出问题都会导致废品。代码也一样,从窗口启动开始,很多事件代码都有相关性的,前面没有处理好就好导致后面一系列的各种问题

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107730 积分:547983 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/17 21:58:00 [显示全部帖子]

还要怎么说呢,前面都没有给行的tag属性赋值,tag属性就是空的,RowActivate里面使用到肯定就出错咯

这个是ListView里RowActivate里的代码
Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
Dim vr As WinForm.ListViewRow = lvw.Current '获取ListView的当前行
Dim dr As DataRow = vr.tag
……

---------------------------

……
Next
For Each gp As String In gps
    Dim vg As WinForm.ListViewGroup = lvw.Groups.Add() '增加分组
    vg.Name = gp  '指定分组名称
    vg.Text = gp '指定分组标题
Next
For Each dr As DataRow In DataTables("表A").DataRows '从数据表中提取数据
   Dim vr As  WinForm.ListViewRow =  lvw.Rows.Add() '增加一行
vr.tag = dr
Dim s As String = ""
For i As Integer = 5 To Tables("表A").Cols.Count - 1 
Dim hmc As  String
hmc = Tables("表A").Cols(i).Name
s = s & vbcrlf & hmc & ":" & dr(hmc)
Next
vr.ToolTipText = s.trim()
    For Each cl As String In cls '逐列取值
        vr("项目名称") = dr("面料名称")
        vr("规格") = dr("规格")
……

 回到顶部