/// <summary>
 /// Applies pagination to the supplied TableView with number of items per page and an
 /// OnTableViewPageTurnedListener for handling changes in the TableView pagination.
 /// </summary>
 /// <param name="tableView">The TableView to be paginated.</param>
 /// <param name="itemsPerPage">The number of items per page.</param>
 /// <param name="listener">The OnTableViewPageTurnedListener for the TableView.</param>
 public Pagination(ITableView tableView, int itemsPerPage, Pagination.OnTableViewPageTurnedListener listener)
 {
     adapterDataSetChangedListener  = new _AdapterDataSetChangedListener_203(this);
     filterChangedListener          = new _FilterChangedListener_223(this);
     columnSortStateChangedListener = new _ColumnSortStateChangedListener_240(this);
     Initialize(tableView, itemsPerPage, listener);
 }
 private void Initialize(ITableView _tableView, int _itemsPerPage,
                         Pagination.OnTableViewPageTurnedListener listener)
 {
     this.onTableViewPageTurnedListener = listener;
     this.itemsPerPage = _itemsPerPage;
     this.tableView    = _tableView;
     this.mRowHeaderRecyclerViewAdapter =
         (RowHeaderRecyclerViewAdapter)_tableView.GetRowHeaderRecyclerView().GetAdapter();
     this.mCellRecyclerViewAdapter = (CellRecyclerViewAdapter)_tableView.GetCellRecyclerView().GetAdapter();
     this.tableView.GetColumnSortHandler().AddColumnSortStateChangedListener(columnSortStateChangedListener);
     this.tableView.GetAdapter().AddAdapterDataSetChangedListener(adapterDataSetChangedListener);
     this.tableView.GetFilterHandler().AddFilterChangedListener(filterChangedListener);
     this.originalCellData = _tableView.GetAdapter().GetCellRecyclerViewAdapter().GetItems();
     this.originalRowData  = _tableView.GetAdapter().GetRowHeaderRecyclerViewAdapter().GetItems();
     this.currentPage      = 1;
     ReloadPages();
 }
 public virtual void RemoveOnTableViewPageTurnedListener()
 {
     this.onTableViewPageTurnedListener = null;
 }
 public virtual void SetOnTableViewPageTurnedListener(
     Pagination.OnTableViewPageTurnedListener onTableViewPageTurnedListener)
 {
     this.onTableViewPageTurnedListener = onTableViewPageTurnedListener;
 }