Foxtable(狐表)用户栏目专家坐堂 → ListView过滤后按顺序逐个显示


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

主题:ListView过滤后按顺序逐个显示

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


加好友 发短信
等级:幼狐 帖子:132 积分:1651 威望:0 精华:0 注册:2014/6/9 14:21:00
ListView过滤后按顺序逐个显示  发帖心情 Post By:2022/7/15 17:35:00 [只看该作者]

Dim cnt As Integer = DataTables("参与人员").DataRows.Count
Dim Val As Double = cnt*0.05
Dim Lng As Long = Math.Ceiling(Val)
Tables("参与人员").StopRedraw()
Dim nds As Integer = Lng '要抽取的记录数
DataTables("参与人员").ReplaceFor("录取状态",False)
Do
    Dim idx As Integer = rand.Next(0,cnt)
    Dim dr As DataRow = DataTables("参与人员").DataRows(idx)
    If dr("录取状态") = False Then
        dr("录取状态") = True
        dr("录取编号") = lng - nds + 1
        nds = nds - 1
    End If
Loop While nds > 0
Tables("参与人员").Filter = "[录取状态] = True"
Tables("参与人员").Refresh

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")

lvw.View = ViewMode.Tile '显示模式为平铺
Dim cls() As String = {"姓名","录取编号"}  '定义列名

For i As Integer = 0 To  cls.Length - 1   '增加列
    Dim c As WinForm.ListViewColumn = lvw.Columns.Add()
    c.Name = cls(i)  '指定列名
Next
For Each dr As DataRow In DataTables("参与人员").DataRows  '从数据表中提取数据
    If dr("录取状态") = True And dr("录取编号") <> "Null"
End If
    Dim vr As  WinForm.ListViewRow =  lvw.Rows.Add()  '增加一行
    Dim lqbh As String = dr("录取编号")  '获取此学生的录取编号
    For Each cl As String In cls  '逐列取值
        vr(cl) = dr(cl)
    Next
Next


我只想显示录取状态为true并且有录取编号的信息,显示顺序按录取编号从小到大显示出来,请问大佬该如何修改代码。

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/7/16 8:43:00 [只看该作者]


For Each dr As DataRow In DataTables("参与人员").select("[录取状态] = True","录取编号")'从数据表中提取数据
    Dim vr As  WinForm.ListViewRow =  lvw.Rows.Add()  '增加一行
    Dim lqbh As String = dr("录取编号")  '获取此学生的录取编号
    For Each cl As String In cls  '逐列取值
        vr(cl) = dr(cl)
    Next
Next

 回到顶部