internal static void RebuildDescriptorIndex(IEnumerable <TDataItem> source, SortDescriptorCollection sortDescriptors, GroupDescriptorCollection groupDescriptors) { IEnumerator <TDataItem> e = source.GetEnumerator(); e.MoveNext(); if (e.Current != null) { for (int i = 0; i < sortDescriptors.Count; i++) { if (string.IsNullOrEmpty(sortDescriptors[i].PropertyName)) { continue; } sortDescriptors[i].PropertyIndex = e.Current.IndexOf(sortDescriptors[i].PropertyName); } for (int i = 0; i < groupDescriptors.Count; i++) { for (int j = 0; j < groupDescriptors[i].GroupNames.Count; j++) { if (string.IsNullOrEmpty(groupDescriptors[i].GroupNames[j].PropertyName)) { continue; } groupDescriptors[i].GroupNames[j].PropertyIndex = e.Current.IndexOf(groupDescriptors[i].GroupNames[j].PropertyName); } } } }
/// <summary> /// Initializes a new instance of the <see cref="CollectionViewProvider<T>"/> class. /// </summary> public CollectionViewProvider() { this.collectionView = null; this.sortDescriptors = new SortDescriptorCollection(); this.groupDescriptors = new GroupDescriptorCollection(); this.filter = null; }
/// <summary> /// Initializes a new instance of the <see cref="CollectionViewProvider<T>"/> class. /// </summary> /// <param name="sourceCollectionView">The source collection view.</param> public CollectionViewProvider(ICollectionView <T> sourceCollectionView) { this.collectionView = sourceCollectionView; this.sortDescriptors = collectionView.SortDescriptors; this.groupDescriptors = collectionView.GroupDescriptors; this.filter = collectionView.Filter; }
internal static void RebuildDescriptorIndex( IEnumerable <TDataItem> source, SortDescriptorCollection sortDescriptors, GroupDescriptorCollection groupDescriptors) { IEnumerator <TDataItem> enumerator = source.GetEnumerator(); enumerator.MoveNext(); if ((object)enumerator.Current == null) { return; } for (int index = 0; index < sortDescriptors.Count; ++index) { if (!string.IsNullOrEmpty(sortDescriptors[index].PropertyName)) { sortDescriptors[index].PropertyIndex = enumerator.Current.IndexOf(sortDescriptors[index].PropertyName); } } for (int index1 = 0; index1 < groupDescriptors.Count; ++index1) { for (int index2 = 0; index2 < groupDescriptors[index1].GroupNames.Count; ++index2) { if (!string.IsNullOrEmpty(groupDescriptors[index1].GroupNames[index2].PropertyName)) { groupDescriptors[index1].GroupNames[index2].PropertyIndex = enumerator.Current.IndexOf(groupDescriptors[index1].GroupNames[index2].PropertyName); } } } }
public GroupDescriptor() { this.groupNames = new SortDescriptorCollection(); this.groupNames.CollectionChanged += new NotifyCollectionChangedEventHandler(this.groupNames_CollectionChanged); this.format = "{0}: {1}"; this.aggregates = new StringCollection(); }
public CollectionViewProvider() { this.collectionView = (ICollectionView <T>)null; this.sortDescriptors = new SortDescriptorCollection(); this.groupDescriptors = new GroupDescriptorCollection(); this.filter = (Predicate <T>)null; }
public SortDescriptor( string propertyName, ListSortDirection direction, SortDescriptorCollection owner) : this(propertyName, direction) { this.owner = owner; }
private void InitializeFields() { this.filter = (Predicate <TDataItem>)null; this.filterExpression = string.Empty; this.filterContext = new StringCollection(); this.sortDescriptorCollectionFactory = (ISortDescriptorCollectionFactory) new DefaultSortDescriptorCollectionFactory(); this.sortDescriptors = this.SortDescriptorCollectionFactory.CreateCollection(); this.sortDescriptors.CollectionChanged += new NotifyCollectionChangedEventHandler(this.sortDescriptors_CollectionChanged); this.groupFactory = (IGroupFactory <TDataItem>) new DefaultGroupFactory <TDataItem>(); this.groupDescriptorCollectionFactory = (IGroupDescriptorCollectionFactory) new DefaultGroupDescriptorCollectionFactory(); this.groupDescriptors = this.GroupDescriptorCollectionFactory.CreateCollection(); this.groupDescriptors.CollectionChanged += new NotifyCollectionChangedEventHandler(this.groupDescriptors_CollectionChanged); }
public DataItemComparer(SortDescriptorCollection sortContext) { this.sortContext = sortContext; }