asp.net - Kentico CMS Repeater UniPager 在一页上显示所有内容
问题描述
我前面有以下代码:
<cms:CMSRepeater ID="RepItems" runat="server" DataBindByDefault="false">
<ItemTemplate>
//code
</ItemTemplate>
</cms:CMSRepeater>
<div class="paging-bar flex">
<cms:UniPager ID="Pager" runat="server">
<PageNumbersTemplate>
//template code here
</PageNumbersTemplate>
</cms:UniPager>
</div>
在后面的代码中,我将此方法称为SetupControl()
var data = //call to webservice
if (!DataHelper.DataSourceIsEmpty(data))
{
RepItems.DelayedLoading = true;
RepItems.DataSource = data;
DataBind();
RepItems.ControlContext = ControlContext; //tried with and without
RepItems.EnablePaging = true; //tried with and without
RepItems.PageSize = PagingPageSize; //tried with and without
RepItems.UniPagerControl = Pager; //tried with and without
Pager.PageSize = PagingPageSize;
Pager.DisplayFirstLastAutomatically = true;
Pager.DisplayPreviousNextAutomatically = true;
Pager.HidePagerForSinglePage = true;
Pager.GroupSize = 3;
Pager.PageControl = RepItems.ID;
Pager.UseQueryParameterForFirstPage = true;
Pager.PagerMode = CMS.DocumentEngine.Web.UI.UniPagerMode.Querystring;
//DataBind();
}
但是转发器显示所有没有分页的项目。有什么我想念的吗?调试时,我得到了 PagingPageSize 的预期值,但 Repeater.PageCount 总是给我一个值 1。
解决方案
尝试使用 BasicRepeater 控件而不是 CMSRepeater。
- 当您手动设置中继器的数据源时,应该恰好在这些情况下使用 BasicRepeater。
- 当您尝试显示由 CMSRepater 通过“路径”属性自动加载的页面时,应使用 CMSRepeater。
推荐阅读
- theory - 2路非确定性下推自动机的问题
- java - Java中坐标之间的距离
- flutter - flutter api调用常用方法
- flutter - 为什么这个 Dart 有返回类变量的问题,但可以返回它的副本?
- php - 在不同的应用程序上使用 laravel 队列/作业,需要建议
- c - C中加法类型转换的机制
- javascript - 现在如何使用 firebase.firestore.FieldValue.serverTimestamp()?
- ruby-on-rails - 可以配置 Rails 以加载每个项目的 .irbrc 文件吗?
- amazon-web-services - 如何每天每 6 小时运行一次 AWS Glue Crawler?
- django - 如何在 Django 中成功发布与投票 API 中的问题相关联的选项?