diff --git a/sandbox/ConsoleApp/Program.cs b/sandbox/ConsoleApp/Program.cs index 9c6bf46..727c228 100644 --- a/sandbox/ConsoleApp/Program.cs +++ b/sandbox/ConsoleApp/Program.cs @@ -8,11 +8,14 @@ using System.Collections.Generic; var dict = new ObservableDictionary(); -var view = dict.CreateView(x => x).ToNotifyCollectionChanged(); +var view = dict.CreateView(x => x); +view.AttachFilter(x => x.Key == 1); + +var view2 = view.ToNotifyCollectionChanged(); dict.Add(key: 1, value: "foo"); dict.Add(key: 2, value: "bar"); -foreach (var item in view) +foreach (var item in view2) { Console.WriteLine(item); } diff --git a/src/ObservableCollections/SynchronizedViewList.cs b/src/ObservableCollections/SynchronizedViewList.cs index 283eb99..4a55eeb 100644 --- a/src/ObservableCollections/SynchronizedViewList.cs +++ b/src/ObservableCollections/SynchronizedViewList.cs @@ -197,6 +197,8 @@ internal class FiltableSynchronizedViewList : ISynchronizedViewList : ISynchronizedViewList : ISynchronizedViewList readonly ISynchronizedView parent; protected readonly List listView; // no filter can be faster protected readonly object gate = new object(); - + protected virtual bool IsSupportRangeFeature => true; public NonFilteredSynchronizedViewList(ISynchronizedView parent)