Foxtable(狐表)用户栏目专家坐堂 → [求助]多选行的操作问题


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

主题:[求助]多选行的操作问题

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/3 22:54:00 [显示全部帖子]

没看懂1楼表达的意思。请说明一下,按什么逻辑进行关联?

然后举例说明一下,比如按什么步骤操作,正确结果是什么,错误结果是什么?

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


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

既然做了筛选,就应该遍历筛选后的table呀,不应该去遍历datatable,datatable是所有数据,不受筛选影响的

Dim t1 As Table = e.Form.Controls("Table1").Table
Dim r As Row = t1.Current

If r IsNot Nothing Then
    
    For i As Integer = e.Table.BottomPosition To e.Table.TopPosition Step - 1
        e.Table.Rows(i)("Temp") = e.Row.Checked
    Next
    
    For Each dr As Row In e.Table.Rows
        If dr("Temp") = True Then 
            dr("SPID") = r("ID")
        End If 
    Next 
End If

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/4 20:09:00 [显示全部帖子]

自己检查所有代码,凡是需要遍历筛选后的表格的地方都按5楼的方法自行改正,不要遍历datatable

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/4 21:26:00 [显示全部帖子]

什么地方不对?

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/4 22:04:00 [显示全部帖子]

可能我理解有误,没看出是什么问题。给出测试步骤,举例说明一下:比如选择操作哪些控件,做什么操作后,预期的结果是怎么样的

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/5 8:29:00 [显示全部帖子]

下面有点不懂,切换到第二行了,这6行的SPID还是=第一行的ID?

4、左表中切换到第二行
5、在右表中拖动鼠标,选中6行,然后在选中的任意一行的复选框列打勾,此时,应当这6行的SPID=第一行的ID

另外,不要考虑到原来已经勾选的行吗,比如选中左表第一行,假如右表已经有3行是SPID=第一行的ID】的行,之前已经勾选了3行,那么现在再选中5行,勾选后不就总共有8行,怎么还是5行呢?

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/8 16:24:00 [显示全部帖子]

【右边的表,每一个只能属于一个SPID】根本解释不了我的疑问

假如右表已经有3行是【SPID=第一行的ID】的行,就是之前已经勾选了3行,【1、选中radiobutton的“未关联”】后右表只是显示所有没有勾选的行,并不是清空所有行SPID的值,也就是之前已经勾选了3行仍然是勾选的,只是看不到

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


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

请重新把改之后的例子发上来测试

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/9 10:31:00 [显示全部帖子]

复选框的多选模式下的处理和表格的筛选有冲突。改为使用逻辑列勾选控制吧,在temp逻辑列里多选后点击勾选。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多选行.zip


[此贴子已经被作者于2023/9/9 10:31:59编辑过]

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/9 11:18:00 [显示全部帖子]

用逻辑列控制吧。主要是副本做了筛选的情况下,遍历更改筛选列的条件会导致表格行发生变化,而导致遍历异常。所以在遍历前先取消筛选,具体看22楼刷新按钮

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