Foxtable(狐表)用户栏目专家坐堂 → 如何通过ListView定位到表中某行数据记录?


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

主题:如何通过ListView定位到表中某行数据记录?

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
如何通过ListView定位到表中某行数据记录?  发帖心情 Post By:2023/6/13 16:13:00 [显示全部帖子]

ListView控件中的数据来自"商品资料"表
当单击ListView某数据时,数据指针移动定位到"商品资料表"对应"商品条码"的商品记录
如何实现?

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/14 18:56: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
Dim ps As Integer = Tables("商品资料").FindRow(dr)
If ps >= 0 Then
    Tables("常用商品_table1").Position = ps
    
End If


以上代码没能实现定位到某记录的功能,错在哪里?

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/14 19:05:00 [显示全部帖子]

怎么通过"商品条码"字段值来定位?

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/15 10:18:00 [显示全部帖子]

Dim ps As Integer = Tables("商品资料").FindRow("商品资料='" & vr("商品条码") & "'")

出错提示
未找到列 [商品资料]。

==================================
Dim ps As Integer = Tables("商品资料").FindRow("商品资料='" & dr("商品条码") & "'")

出错提示
未将对象引用设置到对象的实例。

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/15 10:25:00 [显示全部帖子]

应该是
Dim ps As Integer = Tables("商品资料").FindRow("商品条码='" & vr("商品条码") & "'")
谢谢老师了.

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/15 10:27:00 [显示全部帖子]

Dim ps As Integer = Tables("商品资料").FindRow("商品条码='" & dr("商品条码") & "'")

出错提示
未将对象引用设置到对象的实例。

以上代码还是出错,问题在哪

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/15 11:07:00 [显示全部帖子]

Dim dr As DataRow = vr.tag '获取此行对应的DataRow
Dim ps As Integer = Tables("商品资料").FindRow("商品条码='" & vr("商品条码") & "'")
If ps >= 0 Then
    Tables("常用商品_table1").Position = ps
    
End If

没能定位到指定的商品,感觉是乱定位.

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/15 11:56:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:2023-6-15 11-36-55.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2023-6-15 11-37-13.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2023-6-15 11-37-22.jpg
图片点击可在新窗口打开查看

条码数据应该是没有问题的,如上图.



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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/15 11:58:00 [显示全部帖子]

看起来是生效了,位置的确是移动动了,但却没按照"商品条码"移动到指定数据.

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


加好友 发短信
等级:二尾狐 帖子:577 积分:4596 威望:0 精华:0 注册:2013/3/3 1:52:00
  发帖心情 Post By:2023/6/15 12:04: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
Dim ps As Integer = Tables("商品资料").FindRow("商品条码='" & vr("商品条码") & "'")
'MessageBox.Show(vr("商品条码"))

If ps >= 0 Then
    Tables("常用商品_table1").Position = ps
    
End If

 回到顶部
总数 18 1 2 下一页