以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  自定义录入界面  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=118784)

--  作者:swagger
--  发布时间:2018/5/10 22:40:00
--  自定义录入界面
下拉窗口筛选怎么写? 在textchanged写入以下代码,有时候会出现 关键字"f rom" 附近有语法错误

Dim drp As WinForm.DropDownBox = e.sender
If drp.DroppedDown Then \'如果下拉窗口已经打开
    Dim tbl As Table = Tables("客户下拉窗口_Table1")
    If drp.Text = "" Then \'如果内容为空
        tbl.Filter = ""
    Else \'否则根据输入内容进行模糊筛选
        Dim txt As String = "\'%" & drp.Text & "%\'"

        DataTables("客户").loadFilter = "[性别] = \'男\'"  
DataTables("客户").loadtop = ""
        DataTables("客户").load
Tables("客户下拉窗口_Table1").Filter = "客户名称 Like " & txt  & "Or 客户ID Like" & txt  


End If 
End If

--  作者:有点甜
--  发布时间:2018/5/10 22:42:00
--  
做个具体例子发上来测试。
--  作者:swagger
--  发布时间:2018/5/10 22:54:00
--  
我再测试一下


另外有一个问题,怎么让下拉窗口打开时不显示内容?  

Dim drp As WinForm.DropDownBox = e.Sender
If drp.DroppedDown = False \'如果下拉窗口没有打开
    drp.OpenDropDown() \'打开下拉窗口
Tables("客户列下拉窗口_Table1").filter = "False"
End If

--  作者:swagger
--  发布时间:2018/5/10 22:57:00
--  
已经解决了


Dim txt As String = e.Form.DropDownBox.Text
Dim tbl As Table = Tables("客户下拉窗口_Table1")
If txt = "" Then
   tbl.filter = "False"

Else
    txt = "\'%" & txt & "%\'"
    tbl.Filter = "客户名称 Like " & txt & " Or 客户ID Like " & txt 

End If
End If 
e.Form.DropDownBox.Select() \'将输入焦点返回下拉列表框

--  作者:有点甜
--  发布时间:2018/5/10 22:58:00
--  

下拉窗口 DropDownOpened 事件

 

e.form.controls("Table1").Table.filter = "1=2"