Has simple code in old version of ReactiveUI:
var allItems = new ObservableCollection<Model>(items);
var filteredItems = allItems.CreateDerivedCollection(
x => x,
Filter,
Comparer.Compare);
where Filter and Compare has simple signatures:
private bool Filter(Model item)
public int Compare(Model x, Model y)
sometimes i change items in other threads (big changes, without INPC) or change Filter\Compare strategies and just do filteredItems.Reset();
In DynamicData i try to:
ReadOnlyObservableCollection<Model> filteredItems;
var allItems = new ObservableCollection<Model>(items);
var cancellation = allItems
.ToObservableChangeSet()
.Filter(Filter)
.Sort(Comparer)
.ObserveOn(SynchronizationContext.Current)
.Bind(out filteredItems)
.DisposeMany()
.Subscribe();
but not found, how to Reset this^ or filteredItems.