2010-08-03 3 views
0

У меня странная проблема, о которой я не понимаю о DataPager. После изменения набора страниц (например, страницы 6-10) и нажатия на страницу (6, 7, 8, 9 или 10), она будет перемещаться на первый набор страниц, отсчитываемых от 1 снова.DataPager возвращается к первым страницам

Позвольте мне объяснить. У меня есть страница ASP.Net со списком и DataPager.

<asp:ListView ... DataSourceId="EntityDataSource" DataKeyNames="id"> 
    <LayoutTemplate> 
     <asp:DataPager runat="server" ID="DataPager1" PageSize="15"> 
      <Fields> 
       <asp:NextPreviousPagerField FirstPageText="&lt;&lt;" ShowFirstPageButton="True" ShowNextPageButton="False" 
         ShowPreviousPageButton="False" /> 
       <asp:NumericPageField /> 
       <asp:NextPreviousPagerField LastPageText="&gt;&gt;" ShowLastPageButton="True" ShowNextPageButton="False" 
         ShowPreviousPageButton="False" /> 
      </Fields> 
     </asp:DataPager> 
    </LayoutTemplate> 
</asp:ListView> 

Чтобы обновить данные, я делаю DataBind во время PreRender.

protected override void OnPreRender(EventArgs e) 
{ 
     lstview1.DataBind(); 
     base.OnPreRender(e); 
} 

Все это работает, но проблема в том, что набор страниц не будет запоминаться во время обратной передачи. Позвольте мне объяснить это.

По первому требованию страницы, страницы показывают:

< < 1 2 3 4 5 ... >>

, нажав на кнопку ..., появится следующий набор страниц (а также будут отображены данные страницы 6)

< < ... 6 7 8 9 10 ... >>

Но когда я нажимаю на странице 7 до 10, текст страницы будет отображать первый набор страниц 1-5.

Может кто-нибудь объяснить, почему это происходит? Мисс, я что-то? Благодарю.

ответ

0

Вы привязываетесь не в том месте. Я думаю, что это сбрасывает пейджинг. Вы уверены, что это не сработает, если вы удалите lstview1.DataBind();?

Вы можете проверить эту страницу для примера: http://www.beansoftware.com/asp.net-tutorials/listview-datapager.aspx

+0

Спасибо за ваш ответ. Удаление DataBindg не работает. Я прочитаю эту страницу. – robertpnl

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