The PagedDataSource class wraps a
System.Collections.ICollection data source to
implement "paged views" using the
best available interface to enumerate over the data. This class uses
indexed access if it is available (as in classes derived from
System.Array or implementing
System.Collections.IList) or the
System.Collections.IEnumerable interface if
indexed access is not available.
This class is used internally by the DataGrid
control to provide its paging abilities. It is not used in your code
unless you develop a data-bound control that supports paging.
public sealed class PagedDataSource : ICollection, IEnumerable, System.ComponentModel.ITypedList {
// Public Constructors
public PagedDataSource( );
// Public Instance Properties
public bool AllowCustomPaging{set; get; }
public bool AllowPaging{set; get; }
public int Count{get; } // implements ICollection
public int CurrentPageIndex{set; get; }
public IEnumerable DataSource{set; get; }
public int DataSourceCount{get; }
public int FirstIndexInPage{get; }
public bool IsCustomPagingEnabled{get; }
public bool IsFirstPage{get; }
public bool IsLastPage{get; }
public bool IsPagingEnabled{get; }
public bool IsReadOnly{get; }
public bool IsSynchronized{get; } // implements ICollection
public int PageCount{get; }
public int PageSize{set; get; }
public object SyncRoot{get; } // implements ICollection
public int VirtualCount{set; get; }
// Public Instance Methods
public void CopyTo(Array array, int index); // implements ICollection
public IEnumerator GetEnumerator( ); // implements IEnumerable
public PropertyDescriptorCollection GetItemProperties(System.ComponentModel.PropertyDescriptor[ ] listAccessors);
// implements System.ComponentModel.ITypedList
public string GetListName(System.ComponentModel.PropertyDescriptor[ ] listAccessors);
// implements System.ComponentModel.ITypedList
}