Foxtable(狐表)用户栏目专家坐堂 → 求教关于“文本框查寻”事件。


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

主题:求教关于“文本框查寻”事件。

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


加好友 发短信
等级:婴狐 帖子:48 积分:392 威望:0 精华:0 注册:2013/3/31 19:13:00
求教关于“文本框查寻”事件。  发帖心情 Post By:2014/8/17 13:17:00 [显示全部帖子]

寻求大侠关于:

下面这段只能查找“第一列”和"第二列"

With e.Form
    If e.sender.text <> "有事找我呀!" Then
        Dim dst As Table = Tables("主窗_Table1")
        Dim txb1 As WinForm.TextBox = .Controls("TextBox1")
        dst.Filter = "[第一列] Like '*" & txb1.text & "*' or [第二列] Like '*" & txb1.text & "*'"

    End If
End With

 

需要如何修改就可以直接查找“所有列”呢?


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


加好友 发短信
等级:婴狐 帖子:48 积分:392 威望:0 精华:0 注册:2013/3/31 19:13:00
  发帖心情 Post By:2014/8/17 14:31:00 [显示全部帖子]

以下是引用有点甜在2014-8-17 14:11:00的发言:

或者用代码处理

 

Dim filter As String = "1=2"
For Each dc As DataCol In dst.DataTable.DataCols
    filter &= " or convert(,'System.String') like '%" & txb1.text & "%'"
Next

dst.Filter = filter

 

这个说:      语法错误:“,”运算符前缺少操作数。


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


加好友 发短信
等级:婴狐 帖子:48 积分:392 威望:0 精华:0 注册:2013/3/31 19:13:00
  发帖心情 Post By:2014/8/17 14:32:00 [显示全部帖子]

以下是引用有点甜在2014-8-17 14:08:00的发言:

简单一点,全部写上

 

dst.Filter = "[第一列] Like '*" & txb1.text & "*' or [第二列] Like '*" & txb1.text & "*' or [第n列] Like '*" & txb1.text & "*'"

就是列比较多啊,所以全部比较麻烦呢,


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


加好友 发短信
等级:婴狐 帖子:48 积分:392 威望:0 精华:0 注册:2013/3/31 19:13:00
  发帖心情 Post By:2014/8/17 14:55:00 [显示全部帖子]

以下是引用有点甜在2014-8-17 14:33:00的发言:

 哦,写错了

 

Dim filter As String = "1=2"
For Each dc As DataCol In dst.DataTable.DataCols
    filter &= " or convert(" & dc.Name & ",'System.String') like '%" & txb1.text & "%'"
Next

dst.Filter = filter

感谢,非常好用。

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


加好友 发短信
等级:婴狐 帖子:48 积分:392 威望:0 精华:0 注册:2013/3/31 19:13:00
  发帖心情 Post By:2014/8/17 15:50:00 [显示全部帖子]

大侠咨询下:

 

With e.Form
    If e.sender.text <> "有事找我呀!" Then
        Dim dst As Table = Tables("工作页_Table1")
        Dim txb1 As WinForm.TextBox = .Controls("TextBox1")
        Dim filter As String = "1=2"
        For Each dc As DataCol In dst.DataTable.DataCols
        filter &= " or convert(" & dc.Name & ",'System.String') like '%" & txb1.text & "%'"

Next

dst.Filter = filter

    End If
End With

 

With e.Form
    If e.sender.text <> "有事找我呀!" Then
        Dim dst As Table = Tables("工作页_Table2")
        Dim txb1 As WinForm.TextBox = .Controls("TextBox1")
        Dim filter As String = "1=2"
        For Each dc As DataCol In dst.DataTable.DataCols
        filter &= " or convert(" & dc.Name & ",'System.String') like '%" & txb1.text & "%'"

Next

dst.Filter = filter

    End If
End With

 

只要红色的不同,能不能用一个OR来合并的呀?


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


加好友 发短信
等级:婴狐 帖子:48 积分:392 威望:0 精华:0 注册:2013/3/31 19:13:00
  发帖心情 Post By:2014/8/17 16:51:00 [显示全部帖子]

老大:这个里面错误码比较我多,搞不明白

 

所先 FOR 没有匹配的 next

 

后又没有声明 tnames

 

再然后 


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


加好友 发短信
等级:婴狐 帖子:48 积分:392 威望:0 精华:0 注册:2013/3/31 19:13:00
  发帖心情 Post By:2014/8/17 17:03:00 [显示全部帖子]

老大还一点说:

 

编译错误:未声明名称“dst”.

错误代码:dst,filter =filter


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


加好友 发短信
等级:婴狐 帖子:48 积分:392 威望:0 精华:0 注册:2013/3/31 19:13:00
  发帖心情 Post By:2014/8/17 17:19:00 [显示全部帖子]

老大可以了。感谢,我一定好好学习,天天向上的。


 回到顶部