Linq to SQL - collections aren't Observable

Nov 14, 2008 at 5:46 AM
I have a Linq to SQL data access layer upon which I bind some WPF UI, particularly a grid.  The following works nicely, where SiteEntity.SiteTanks is a LINQ to SQL collection.

Private IBindingList _siteTanks;
        public IBindingList SiteTanks
        {
            get
            {
                    _siteTanks = this.SiteEntity.SiteTanks.GetNewBindingList();
                    _siteTanks.ListChanged += new ListChangedEventHandler(_siteTanks_ListChanged);
                    return _siteTanks;

I can
a) add  entities to the underlying data source and the grid picks up the changes. 
b) delete from - ditto (because I can call _siteTanks.Remove() in addition to the Linq to sql DeleteOnSubmit(instance)
c) I can edit the entity properties and the ListChanged event fires, thus allowing me to know the data IsDirty.

However, at some point I know that I will need to filter the list based on user actions,  eg adding a filter condition such as "ProductTypeID = 2".  Hence my interest in Bindable LINQ.

I have considered and tried an implementation using Bindable LINQ.  However none of the above work.  Editing the items on the list works, as point c), but the grid isn't notified.