以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  统计记录数  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=175865)

--  作者:nxqtxwz
--  发布时间:2022/3/22 14:22:00
--  统计记录数

请问:想在窗口中做一个“标签”控件,适时显示表A复选框中选中的记录数,代码怎么写呢?


--  作者:有点蓝
--  发布时间:2022/3/22 14:26:00
--  
到表格AfterCheckRow事件,遍历所有勾选的行,计数,然后给控件的text赋值
--  作者:nxqtxwz
--  发布时间:2022/3/22 15:23:00
--  

不知遍历的代码怎么写


--  作者:有点蓝
--  发布时间:2022/3/22 15:46:00
--  
http://www.foxtable.com/webhelp/topics/1640.htm
--  作者:nxqtxwz
--  发布时间:2022/3/22 17:40:00
--  

请问老师,下面的代码怎么能合在一起呢。

If e.Row.Checked  Then
Dim Cols1() As String = {"年级","班级","学生姓名","性别","联系电话"}
Dim Cols2() As String = {"年级","班级","学生姓名","性别","联系电话"}
    Dim dr2 As DataRow = DataTables("学生核酸检测").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = e.Row(Cols1(i))
    Next
Else
DataTables("学生核酸检测").deletefor("年级=\'" & e.Row("年级") & "\' and 班级=\'" & e.Row("班级") & "\'  and 学生姓名=\'" & e.Row("学生姓名") & "\'  and 性别=\'" & e.Row("性别") & "\'  and 联系电话=\'" & e.Row("联系电话") & "\' ")
End If

If e.Row.Checked  Then
    For Each r As Row In e.Table.GetCheckedRows \'遍历所有已经勾选的行
        If r("_Identify") <> e.Row("_Identify") Then \'如果不是本行
            r.Checked  = False \'取消勾选此行
        End If
    Next
End If

 

 

另外:如何把计数传递给控件呢。


--  作者:有点蓝
--  发布时间:2022/3/22 20:16:00
--  
If e.Row.Checked  Then
    Dim Cols1() As String = {"年级","班级","学生姓名","性别","联系电话"}
    Dim Cols2() As String = {"年级","班级","学生姓名","性别","联系电话"}
    Dim dr2 As DataRow = DataTables("学生核酸检测").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = e.Row(Cols1(i))
    Next
Else
    DataTables("学生核酸检测").deletefor("年级=\'" & e.Row("年级") & "\' and 班级=\'" & e.Row("班级") & "\'  and 学生姓名=\'" & e.Row("学生姓名") & "\'  and 性别=\'" & e.Row("性别") & "\'  and 联系电话=\'" & e.Row("联系电话") & "\' ")
End If

If forms("xxx").Opened  Then
    Forms("xxx").Controls("标签").text = e.Table.GetCheckedRows.count
End If