2011-03-11 13 views
1

私はASP.NETのリストビューにASP.NET DataPagerコントロールをリンクしようとしていますをPage_LoadでASP.NET DataPager

<div> 
    <asp:ListView ID="ListView1" runat="server"> 
     <ItemTemplate> 
      <a href="#"><%#DataBinder.Eval(Container.DataItem,"LinkText")%></a> 
     </ItemTemplate>   
    </asp:ListView> 

    <asp:DataPager runat="server" ID="DataPager1" PagedControlID="ListView1" PageSize="2"> 
     <Fields> 
      <asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True" ShowLastPageButton="True" /> 
     </Fields> 
    </asp:DataPager>   

</div> 

iはDataTableの

protected void Page_Load(object sender, EventArgs e) 
    { 
     if (Page.IsPostBack == false) 
     { 
      _fl.ConnectToSQLServer(); 

      DataTable dt = new DataTable(); 

      dt.Load(_fl.GetCategories()); 

      ListView1.DataSource = dt; 
      ListView1.DataBind(); 

      _fl.DisconnectFromSQLServer(); 
     } 
    } 

データとリストビューをロードするには、正しく表示されますが、DataPagerはありませんそれが必要なように動作しません

何か助けていただければ幸いです。ありがとうございました。

答えて

4

リストビューを取り込むためのPage_LoadからOnPreRenderに切り替え、

をチェックIsPostBackプロパティ

protected override void OnPreRender(EventArgs e) 
{ 
      base.OnPreRender(e); 
      _fl.ConnectToSQLServer(); 

      DataTable dt = new DataTable(); 

      dt.Load(_fl.GetCategories()); 

      ListView1.DataSource = dt; 
      ListView1.DataBind(); 

      _fl.DisconnectFromSQLServer(); 


} 
+0

を試してみてくださいをスキップするには、それが働いたありがとうございます。 :) –

+0

私のために働いても:) – BG100

関連する問題