以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  分页加载模糊搜索问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=117129)

--  作者:swagger
--  发布时间:2018/4/7 11:52:00
--  分页加载模糊搜索问题

With e.Form
    If e.sender.text <> "输入产品名称或者产品id查询" Then
        Dim dst As Table = Tables("产品_table1")
        Dim txb1 As WinForm.TextBox = .Controls("TextBox3")
        dst.Filter = "[产品名称] Like \'*" & txb1.text & "*\' or [产品id] Like \'*" & txb1.text & "*\'"

    End If
End With



以上代码可以在全部数据加载在同一页列出筛选内容,但是在分页加载就只能显示当页的筛选内容,怎么做到可以列出所有的筛选内容呢

--  作者:有点蓝
--  发布时间:2018/4/7 14:13:00
--  

 dst.datatable.loadFilter = "[产品名称] Like \'*" & txb1.text & "*\' or [产品id] Like \'*" & txb1.text & "*\'"
 dst.datatable.load

--  作者:swagger
--  发布时间:2018/4/7 14:26:00
--  
就是刚才试过了,不行。这段代码放在textchanged 不知道有没有问题。我研究下看看什么原因,等下再问
[此贴子已经被作者于2018/4/7 14:26:56编辑过]

--  作者:有点蓝
--  发布时间:2018/4/7 14:47:00
--  
建议放到leave事件,或者按钮,textchanged输一个字符查一次,效率非常低
--  作者:有点蓝
--  发布时间:2018/4/7 14:48:00
--  
不要使用*号
dst.datatable.loadFilter = "[产品名称] Like \'%" & txb1.text & "%\' or [产品id] Like \'%" & txb1.text & "%\'"
 dst.datatable.load

--  作者:swagger
--  发布时间:2018/4/7 15:04:00
--  
可以了,可能是忘记加loadpage了,不知道什么原因,反正现在是可以了

With DataTables("产品")
With e.Form
    If e.sender.text <> "输入产品名称或者产品id查询" Then
        Dim dst As Table = Tables("产品_table1")
        Dim txb1 As WinForm.TextBox = .Controls("TextBox3")
      dst.datatable.loadFilter = "[产品名称] Like \'%" & txb1.text & "%\' or [产品id] Like \'%" & txb1.text & "%\'"
 dst.datatable.load

    End If
End With
If .LoadPage <> 0 Then
       .LoadTop = 20
       .LoadPage = 0
       .Load()
DataTables("产品").LoadChildren("产品明细", "产品id", "产品id)
    End If

End With