.NET中repeater分页怎么应用

avatar
作者
猴君
阅读量:2

在.NET中,可以使用Pager控件来实现Repeater的分页。以下是一个示例:

  1. 在ASPX页面中,添加Pager控件和Repeater控件:
<asp:Pager ID="Pager1" runat="server" PageSize="10" OnPageIndexChanged="Pager1_PageIndexChanged"> <Fields> <asp:NumericPagerField ButtonType="Link" CurrentPageLabelCssClass="selected" /> </Fields> </asp:Pager> <asp:Repeater ID="Repeater1" runat="server"> <!-- Repeater内容 --> </asp:Repeater> 
  1. 在Code-behind文件中,编写代码来绑定Repeater和Pager控件:
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindRepeater(0); // 初始化绑定第一页数据 } } protected void Pager1_PageIndexChanged(object sender, EventArgs e) { int pageIndex = Pager1.CurrentPageIndex - 1; BindRepeater(pageIndex); // 根据页码绑定对应的数据 } private void BindRepeater(int pageIndex) { // 根据pageIndex从数据库或其他数据源获取数据 // 假设数据保存在List中 List<string> data = GetDataFromDatabase(); // 计算总页数 int totalRecords = data.Count; int pageSize = Pager1.PageSize; int totalPages = (totalRecords + pageSize - 1) / pageSize; // 分页显示数据 Repeater1.DataSource = data.Skip(pageIndex * pageSize).Take(pageSize); Repeater1.DataBind(); // 更新Pager控件的总页数和当前页码 Pager1.TotalPages = totalPages; Pager1.CurrentPageIndex = pageIndex + 1; } 

以上代码中,我们使用Pager控件的CurrentPageIndex属性来获取当前页码,然后根据页码从数据源中获取对应的数据,并绑定到Repeater控件中。同时,我们还计算了总页数,并更新了Pager控件的TotalPages属性。在Pager1_PageIndexChanged事件中,我们重新绑定Repeater控件,实现了分页效果。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!