Exemple #1
0
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="collection">Coleção que será adaptada.</param>
 /// <param name="proxyCreator"></param>
 /// <param name="itemCreator"></param>
 public ObservableCollectionProxy(IObservableCollection <T> collection, Func <T, TProxy> proxyCreator, Func <TProxy, T> itemCreator)
 {
     collection.Require("collection").NotNull();
     proxyCreator.Require("proxyCreator").NotNull();
     _collectionChangedHandlers = new Dictionary <NotifyCollectionChangedEventHandler, CollectionChangedWrapperEventData>();
     Initialize(collection, proxyCreator, itemCreator);
 }
Exemple #2
0
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="source">Coleção de origem com todos os dados da lista.</param>
 /// <param name="selectedItems">Relação dos itens selecionados.</param>
 /// <param name="selectionComparer">Comparador que será utilizado na solução.</param>
 public SelectionCollection(IObservableCollection <T> source, IObservableCollection <T> selectedItems, SelectionEntryEqualityComparer <T> selectionComparer)
 {
     source.Require("source").NotNull();
     selectedItems.Require("selectedItems").NotNull();
     _selectionComparer = selectionComparer == null ? (typeof(IEquatable <T>).IsAssignableFrom(typeof(T)) ? new SelectionEntryEqualityComparer <T>(Compare2) : new SelectionEntryEqualityComparer <T>(Compare1)) : selectionComparer;
     _selectedItems     = selectedItems;
     Initialize(source, CreateEntryProxy, null);
     _selectedItems.CollectionChanged += SelectedItemsCollectionChanged;
 }
Exemple #3
0
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="source">Coleção de origem com todos os dados da lista.</param>
 /// <param name="selectedItems">Relação dos itens selecionados.</param>
 /// <param name="selectionComparer">Comparador que será utilizado na solução.</param>
 /// <param name="selectedItemCreator">Delegate usado para cria o item selecionado.</param>
 public SelectionCollection(IObservableCollection <T> source, IObservableCollection <TProxy> selectedItems, SelectionEntryEqualityComparer <T, TProxy> selectionComparer, Func <T, TProxy> selectedItemCreator)
 {
     source.Require("source").NotNull();
     selectedItems.Require("selectedItems").NotNull();
     selectionComparer.Require("selectionComparer").NotNull();
     selectedItemCreator.Require("selectedItemCreator").NotNull();
     _selectionComparer   = selectionComparer;
     _selectedItemCreator = selectedItemCreator;
     _selectedItems       = selectedItems;
     Initialize(source, CreateEntryProxy, null);
     _selectedItems.CollectionChanged += SelectedItemsCollectionChanged;
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="name">Nome do indice.</param>
 /// <param name="collection">Coleção que será observada.</param>
 /// <param name="watchProperties">Relação das propriedades assistidas.</param>
 /// <param name="keyGetter">Ponteiro do método usado para recupera o valor da chave do item.</param>
 /// <param name="comparer">Comparador que será utilizado.</param>
 public ObservableCollectionIndex(string name, IObservableCollection <T> collection, string[] watchProperties, Func <T, object> keyGetter, System.Collections.IComparer comparer)
 {
     name.Require("name").NotNull().NotEmpty();
     collection.Require("collection").NotNull();
     keyGetter.Require("keyGetter").NotNull();
     comparer.Require("comparer").NotNull();
     _name            = name;
     _collection      = collection;
     _watchProperties = watchProperties ?? new string[0];
     _keyGetter       = keyGetter;
     _comparer        = comparer;
     _collection.CollectionChanged += CollectionCollectionChanged;
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="source">Relação da coleção de origem dos dados.</param>
 /// <param name="comparer">Comparador que será utilizado para ordenar os itens.</param>
 public SortableObservableCollection(IObservableCollection <T> source, IComparer <T> comparer)
 {
     source.Require("source").NotNull();
     comparer.Require("comparer").NotNull();
     _source   = source;
     _comparer = comparer;
     _comparerPropertiesContainer = comparer as IPropertiesContainer;
     _source.CollectionChanged   += SourceCollectionChanged;
     _indexes = new BaseObservableCollection <int>();
     for (var i = 0; i < _source.Count; i++)
     {
         _indexes.Add(i);
     }
     foreach (var i in _source)
     {
         RegisterItem(i);
     }
     CalculateIndexes();
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="collection"></param>
 public ObservableCollectionDebugView(IObservableCollection <T> collection)
 {
     collection.Require("collection").NotNull();
     this._collection = collection;
 }
 /// <summary>
 /// Construtor padrão.
 /// </summary>
 /// <param name="source"></param>
 public ObservableCollectionWrapper(IObservableCollection source)
 {
     source.Require("source").NotNull();
     _source     = source;
     _sourceList = (System.Collections.IList)source;
 }