0

我有 5 个数据网格视图,每个有 5 到 15 列...

所以我正在尝试使过滤自动化一点。但我根本无法让它工作!

我的 bindingSource 使用实现 Sortable 的 BindingList:http ://www.tech.windowsapplication1.com/content/sortable-binding-list-custom-data-objects

我已经搜索了一段时间,但找不到为什么我可以设置 bindingSource.Filter,但它什么也没做:S

我找到了数据表或 c# 的示例,但我还没有找到 Vb.net 和 BindingSource 的示例...

这是我创建绑定源的代码,我添加了过滤器作为测试,它通常不在这里。

Public Function reqTable(Of T)(ByVal pTable As String, ByVal pNoProjet As Integer, 
      Optional ByVal strAdditionnalConditions As String = "") As BindingSource
    Dim lstRetour As New cclSortableBindingList(Of T)(New List(Of T))
    Dim bsRetour As New BindingSource(lstRetour, "")

    rsRequestCSV = conSQL.Execute("SELECT * FROM " & pTable & " WHERE NoProjet = " & 
        pNoProjet & " " & strAdditionnalConditions)
    With rsRequestCSV
        While Not .EOF
            lstRetour.Add(Activator.CreateInstance(GetType(T), New Object() 
                 {rsRequestCSV.Fields})) 'New clsTable(rsRequestCSV.Fields))
            .MoveNext()
        End While
    End With
    bsRetour.Filter = "Quantite < 3"
    Return bsRetour
End Function
4

1 回答 1

1

为了使用BindingSource.Filter,底层列表 ( cclSortableBindingList) 需要实现IBindingListView接口。ABindingList没有实现这个接口。

请参阅MSDN 中的BindingSource.Filter 属性

于 2012-08-10T16:39:23.333 回答