2013-07-04 52 views
1

我有一個標準的Repeater,我想要做的就是向它添加分頁,並且不斷收到標題中列出的錯誤。這裏是我的錯誤點DataSource和DataSourceID都是在'Repeater1'上定義的

private void ItemsGet() 
    { 
     // Read sample item info from XML document into a DataSet 
     DataSet Items = new DataSet(); 
     Items.ReadXml(MapPath("Items.xml")); 

     // Populate the repeater control with the Items DataSet 
     PagedDataSource objPds = new PagedDataSource(); 
     objPds.DataSource = Items.Tables[0].DefaultView; 
     objPds.AllowPaging = true; 
     objPds.PageSize = 3; 

     objPds.CurrentPageIndex = CurrentPage; 

     lblCurrentPage.Text = "Page: " + (CurrentPage + 1).ToString() + " of " 
      + objPds.PageCount.ToString(); 

     // Disable Prev or Next buttons if necessary 
     cmdPrev.Enabled = !objPds.IsFirstPage; 
     cmdNext.Enabled = !objPds.IsLastPage; 

     Repeater1.DataSource = objPds; 
     Repeater1.DataBind(); 
    } 

對於那些會問我會後我的中繼

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1" OnItemDataBound="myFunction"> 
     <HeaderTemplate> 
     </HeaderTemplate> 
     <AlternatingItemTemplate> 
     </AlternatingItemTemplate>    
     <ItemTemplate> 
     </ItemTemplate> 
     <FooterTemplate> 
     </FooterTemplate>   
    </asp:Repeater> 
    <tr> 
     <td><asp:label id="lblCurrentPage" runat="server"></asp:label></td> 
    </tr> 

回答

2

我相信your're設置DataSourceID="SqlDataSource1",並且還設置Repeater1.DataSource = objPds;。設置一個或另一個。 在你的情況下,你可能想要刪除DataSourceID="SqlDataSource1"

相關問題