namespace Perspex { using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Collections.Specialized; using System.Linq; using System.Reactive.Linq; using System.Reactive.Subjects; using System.Text; using System.Threading.Tasks; public class PerspexList : ObservableCollection { public PerspexList() { this.Changed = Observable.FromEvent( handler => (sender, e) => handler(e), handler => this.CollectionChanged += handler, handler => this.CollectionChanged -= handler); } public IObservable Changed { get; private set; } } }