public static GroupingReadOnlyContinuousCollection <TKey, TSource> GroupBy <TKey, TSource>( this ReadOnlyContinuousCollection <TSource> source, Expression <Func <TSource, TKey> > keySelector) where TSource : INotifyPropertyChanged { return(new GroupingReadOnlyContinuousCollection <TKey, TSource>(source, keySelector)); }
public static OrderedReadOnlyContinuousCollection <TSource> OrderByDescending <TSource, TKey>( this ReadOnlyContinuousCollection <TSource> source, Expression <Func <TSource, TKey> > keySelector) where TSource : INotifyPropertyChanged where TKey : IComparable { return(new SortingReadOnlyContinuousCollection <TSource, TKey>(source, keySelector, true)); }
public static ReadOnlyContinuousCollection <TResult> GroupJoin <TOuter, TInner, TKey, TResult>( this ReadOnlyContinuousCollection <TOuter> outer, IList <TInner> inner, Expression <Func <TOuter, TKey> > outerKeySelector, Expression <Func <TInner, TKey> > innerKeySelector, Expression <Func <TOuter, ReadOnlyContinuousCollection <TInner>, TResult> > resultSelector) { return(new GroupJoinReadOnlyContinuousCollection <TOuter, TInner, TKey, TResult>( outer, inner, outerKeySelector, innerKeySelector, resultSelector)); }
/// <summary> /// When a change occurs, which is not a property change on a collection item, /// but changes the result of a Where() filter /// </summary> /// <typeparam name="TSource"></typeparam> /// <param name="source"></param> public static void ReEvaluate <TSource>(this ReadOnlyContinuousCollection <TSource> source) { LinqContinuousCollection <TSource> collection = source as LinqContinuousCollection <TSource>; if (collection == null) { return; } List <IViewAdapter> adapterCollection = new List <IViewAdapter>(); IViewAdapter adapter = collection.SourceAdapter; while (adapter != null) { adapterCollection.Add(adapter); adapter = adapter.PreviousAdapter; } adapterCollection.Reverse(); adapterCollection.ForEach(a => a.ReEvaluate()); }
public DebugView(ReadOnlyContinuousCollection <T> collection) { this.Collection = collection; }
public OutputCollectionWrapper(ReadOnlyContinuousCollection <T> inner) { _inner = inner; }
public static ReadOnlyContinuousCollection <TResult> SelectMany <TSource, TResult>( this ReadOnlyContinuousCollection <TSource> source, Expression <Func <TSource, IList <TResult> > > manySelector) { return(new SelectManyReadOnlyContinuousCollection <TSource, TResult>(source, manySelector)); }
public static ReadOnlyContinuousCollection <TSource> Skip <TSource>(this ReadOnlyContinuousCollection <TSource> collection, int count) { return(new SkipReadOnlyContinuousCollection <TSource>(collection, count)); }
public static ReadOnlyContinuousCollection <TSource> Concat <TSource>(this ReadOnlyContinuousCollection <TSource> first, ReadOnlyContinuousCollection <TSource> second) { return(new ConcatReadOnlyContinuousCollection <TSource>(first, second)); }
public static ReadOnlyContinuousCollection <TResult> Select <TSource, TResult>( this ReadOnlyContinuousCollection <TSource> source, Expression <Func <TSource, TResult> > selector) { return(new SelectReadOnlyContinuousCollection <TSource, TResult>(source, selector)); }
public static ReadOnlyContinuousCollection <TSource> Distinct <TSource>( this ReadOnlyContinuousCollection <TSource> source) { return(new DistinctReadOnlyContinuousCollection <TSource>(source)); }
public static ReadOnlyContinuousCollection <TSource> Where <TSource>( this ReadOnlyContinuousCollection <TSource> source, Expression <Func <TSource, bool> > filter) where TSource : INotifyPropertyChanged { return(new FilteringReadOnlyContinuousCollection <TSource>(source, filter)); }