写错了。
Dim tnames() As String = { "Table1", "Table2"}
With e.Form
If e.sender.text <> ""Then
For Each tname As String In tnames
Dim dst As Table = Tables(tname)
Dim txb1 As WinForm.TextBox = .Controls("TextBox1")
Dim filter As String = "1=2"
For Each dc As DataCol In dst.DataTable.DataCols
filter &= " or "
Dim ary() As String = txb1.Text.Split(" ")
For i As Integer = 0 To ary.Length - 2
filter &= " convert(" & dc.Name & ",'System.String') like '%" & ary(i) & "%'"
filter &= " and "
Next
filter &= " convert(" & dc.Name & ",'System.String') like '%" & ary(ary.length-1) & "%'"
Next
dst.Filter = filter
Next
End If
End With