From MSDN:
Only underlying lists that implement the IBindingListView interface support filtering.
The datasource is just an IEnumerable
. You have to filter in the LINQ query itself. For instance:
Dim mainList = (From x in Dbase.Activity select x).ToList
BS.Datasource=(From x in mainList.Where(...) select x)
and put your filter at the dots. Each time you set the data source to a new filtered list, the objects in the list won't be affected because they are not re-fetched from the database.