我用如下代码运用TrueDBGrid的Filter属性时出错:
Private Sub TDBGrid1_FilterChange()
On Error GoTo errHandlerSet cols = TDBGrid1.Columns
Dim c As Integer
c = TDBGrid1.col
TDBGrid1.HoldFields
KSS = getFilter()
Adodc1.Recordset.Filter = KSS
TDBGrid1.col = c
TDBGrid1.EditActive = TrueerrHandler:
    MsgBox Err.Source & ":" & vbCrLf & Err.Description
    For Each col In TDBGrid1.Columns
        col.FilterText = ""
    Next col
End SubPrivate Function getFilter() As String
    Dim tmp As String
    Dim n As Integer
    For Each col In cols
        If Trim(col.FilterText) <> "" Then
            n = n + 1
            If n > 1 Then
                tmp = tmp & " AND "
            End If
            tmp = tmp & col.DataField & " LIKE '" & col.FilterText & "%'"
        End If
    Next col
                
    getFilter = tmp
End Function
对于有些字段它会抛出一个异常:Provider:过滤器不能被打开。请问是怎么回事?