Exemple #1
0
 /// <summary>
 /// Creates observable sequence from <paramref name="source"/> ListChanged events.
 /// Observable will start with <see cref="NotifyListChangedAction.Reset"/> notification containing current snapshot of items.
 /// </summary>
 public static IObservable <NotifyListChangedEventArgs <T> > AsBehaviorObservable <T>(this INotifyListChanged <T> source)
 {
     return(Observable.Defer(() =>
     {
         var items = source.GetSnapshot();
         return Observable.Return(new NotifyListChangedEventArgs <T>(NotifyListChangedAction.Reset, items, items));
     })
            .Concat(
                source.AsObservable()
                ));
 }