2008-11-05 2 views

ответ

1

установить текущий индекс страницы, чтобы быть количество страниц - 1.

+0

Да, но где можно найти число страниц и где вы можете установить индекс страницы? –

1

Вам нужно знать общее количество записей и количество записей, отображаемых на одной странице.

This полезно после показывает, как получить количество записей:

private LinqDataSourceSelectEventArgs args; 
protected void LinqDataSource1_Selecting(object sender, LinqDataSourceSelectEventArgs e) 
{ 
    args = e;   
    e.Result = new Database().Table.Whatever...      
} 

protected void LinqDataSource1_Selected(object sender, LinqDataSourceStatusEventArgs e) 
{ 
    this.label1.Text = args.Arguments.TotalRowCount + " records"; 
} 

Там в дальнейшее обсуждение есть ситуации, которая кажется похожа на вашу.

+0

Это даст нам количество строк, и оттуда мы сможем определить количество присутствующих страниц, но я до сих пор не вижу способа установить индекс страницы. –

1

Я никогда не делал этого, но есть несколько мест, которые я хотел бы посмотреть, могу ли я сделать требуемое изменение: обработчик OnSelecting для источника данных, OnPreRender или OnDataBinding для ListView и OnPreRender для DataPager , По сути, вы хотите обработать случай !IsPostBack особым образом. Я, вероятно, сначала посмотрю на DataPager и посмотрю, сможете ли вы узнать, сколько страниц есть, и установить его на последнюю страницу. Возможно, вам придется перестроить источник данных после установки страницы на нужную вам. После этого я бы посмотрел на добавление обработчика OnDataBinding для ListView и посмотреть, что вы можете там сделать. Я подозреваю, что PreRender слишком поздно, чтобы ListView имел какой-либо эффект и OnSelecting, хотя он хорош для фильтрации через функцию на основе таблиц, вероятно, в этом случае не принесет больших пользы.

Смежные вопросы