以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]在下拉窗口中进行查找后下拉窗口就直接退出了 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=64778) |
||||
-- 作者:loongtai -- 发布时间:2015/3/1 21:09:00 -- [求助]在下拉窗口中进行查找后下拉窗口就直接退出了 如题,窗口布局如下: 在查找文本框的valuechanged事件中代码如下: 试了下查找的filter 语句是正确的,但查找后,下拉窗口就直接退出了。不知如何在查找后下拉窗口仍然显示? |
||||
-- 作者:有点甜 -- 发布时间:2015/3/1 21:14:00 -- 上传对应例子,除非你关闭,不然不会无故关闭 |
||||
-- 作者:loongtai -- 发布时间:2015/3/2 18:19:00 -- 试了下,查找后下拉窗口还是直接关闭了。
还请大侠们帮忙解决 |
||||
-- 作者:有点甜 -- 发布时间:2015/3/2 19:17:00 -- \'MessageBox.Show("触发查找事件") Dim 查找内容 As String =e.sender.value Dim tbl As Table = Tables(e.form.name & "_Tab_1") Dim 查找列值 As String=e.Form.Controls("ccb_查找列_1").value Dim 查找列 As new List(of String) Dim 字符列 As new List(of String) Dim filter As String Dim i As Integer If 查找内容 = "" Then tbl.Filter = "" Else 查找内容 = "\'%" & 查找内容 & "%\'" For Each c As Col In tbl.Cols If c.IsString Then 字符列.add(c.name) End If Next If 查找列值="" Then For Each c As Col In tbl.Cols If c.IsString Then 查找列.add(c.name) End If Next Else 查找列.addrange(查找列值.split("|")) For Each str As String In 查找列 If 字符列.contains(str)=False Then 查找列.Remove(str) End If Next End If For Each str As String In 查找列 If filter Is Nothing Then filter=str & " Like " & 查找内容 Else filter=filter & " or " & str & " Like " & 查找内容 End If Next \'MessageBox.show("filter=" & filter) tbl.Filter =filter \'e.Form.DropDownBox.Select() \'将输入焦点返回下拉列表框 End If |