示例#1
0
        public static ReadOnlyObservableCollection <T> Create <T, TKey>(ICollection <T> observed, Func <T, TKey> order, IComparer <TKey> comparer = null)
        {
            CheckArgs.NotNull(observed, "observed");
            CheckArgs.NotNull(order, "order");

            var filtered = new ObservableCollection <T>();

            return(new FilteredCollection <T, T, TKey>(observed, filtered, x => true, order, comparer));
        }
示例#2
0
        public static ReadOnlyObservableCollection <T> Create <T>(ICollection <T> observed, Func <T, bool> predicate)
        {
            CheckArgs.NotNull(observed, "observed");
            CheckArgs.NotNull(predicate, "predicate");

            var filtered = new ObservableCollection <T>();

            return(new FilteredCollection <T, T, object>(observed, filtered, predicate, null, null));
        }
示例#3
0
        public static ReadOnlyObservableCollection <TOut> Create <TIn, TOut, TKey>(ICollection <TIn> observed, Func <TIn, bool> predicate, Func <TOut, TKey> order, IComparer <TKey> comparer = null)
            where TOut : TIn
        {
            CheckArgs.NotNull(observed, "observed");
            CheckArgs.NotNull(predicate, "predicate");
            CheckArgs.NotNull(order, "order");

            var filtered = new ObservableCollection <TOut>();

            return(new FilteredCollection <TIn, TOut, TKey>(observed, filtered, predicate, order, comparer));
        }