P.Pager
Version 9.0.0
佩格
P.Pager 是轻量级包,可以轻松地对任何 IEnumerable/IQueryable 进行分页,将其分成“页面”,并通过索引抓取特定的“页面”。它支持Web项目、Winforms、WPF、Window Phone、Silverlight和其他.NET项目。默认配置为> Bootstrap 3.3.1 。
通过 NuGet 安装 P.Pager.Mvc。这将自动安装 P.Pager。
Install-Package P.Pager.Mvc -Version 3.0.0
通过 NuGet 安装 P.Pager.Mvc.Core。这将自动安装 P.Pager。
Install-Package P.Pager.Mvc.Core -Version 3.0.0
通过 NuGet 安装 P.Pager.Mvc.Core。这将自动安装 P.Pager。
Install-Package P.Pager.Mvc.Core
public class HomeController : Controller
{
readonly DemoData _data ;
public HomeController ( )
{
_data = new DemoData ( ) ;
}
public ActionResult Index ( int page = 1 , int pageSize = 10 )
{
var pager = _data . GetMembers ( ) . ToPagerList ( page , pageSize ) ;
// will only contain 10 members max because of the pageSize.
return View ( pager ) ;
}
}
将ToPagerList的结果传递到您的视图,您可以在其中枚举它 - 它仍然是 IEnumerable,但仅包含原始数据的子级。
调用Html.Pager ,传入 Pager 的实例和一个函数,该函数将为每个页面生成 URL 以查看分页控件。
//Default Pager options
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) )
渲染分页的默认选项。
选项 | 类型 | 概括 | 默认 |
---|---|---|---|
显示第一页 | 寻呼机显示模式 | 如果设置为“始终”,则呈现指向列表中第一页的超链接。如果设置为 IfNeeded,则仅当第一页在分页控件中不可见时才呈现超链接。 | 如果需要的话 |
显示最后一页 | 寻呼机显示模式 | 如果设置为“始终”,则呈现指向列表中最后一页的超链接。如果设置为 IfNeeded,则仅当最后一页在分页控件中不可见时才呈现超链接。 | 如果需要的话 |
显示上一页 | 寻呼机显示模式 | 如果设置为“始终”,则呈现指向列表上一页的超链接。如果设置为 IfNeeded,则仅当列表中存在上一页时才呈现超链接。 | 如果需要的话 |
显示下一页 | 寻呼机显示模式 | 如果设置为“始终”,则呈现指向列表下一页的超链接。如果设置为 IfNeeded,则仅当列表中存在下一页时才呈现超链接。 | 如果需要的话 |
显示页数 | 整数? | 分页显示多少页码,默认为5。 | 5 |
有单独的页面 | 布尔值 | 显示页码。 | 真的 |
文本到各个页面 | 细绳 | 要在超链接内显示的格式化文本。使用 {0} 引用页码,默认设置为 {0} | {0} |
分隔符文本 | 细绳 | 这将出现在每个页码之间。如果为空或空白,则不会显示分隔符。 | 无效的 |
有椭圆 | 布尔值 | 当所有页码未显示时添加省略号,默认为 true。 | 真的 |
省略号格式 | 细绳 | 当所有页面未显示时显示格式化文本,默认情况下...... | …… |
文本到首页 | 细绳 | 显示首页链接的格式化文本,默认设置为 <<。 | << |
文本到上一页 | 细绳 | 显示上一页链接的格式化文本,默认设置为 <。 | < |
文本到下一页 | 细绳 | 显示下一页链接的格式化文本,默认设置为 >。 | > |
文本到最后一页 | 细绳 | 最后一页链接显示的格式化文本,默认设置为 >>。 | >> |
类到Pager容器 | 细绳 | 用于附加到分页内容中的 元素的 Css 类,默认情况下将其设置为分页器容器。 | 容器 |
类ToU | 细绳 | 附加到分页内容中的
| 分页 |
托利类 | 细绳 | 附加到分页内容中 | 页面项目 |
页面类 | 细绳 | 附加到分页内容中的 / 元素的 CSS 类,默认设置为 page-link。 | 页面链接 |
类到ActiveLi | 细绳 | 如果在分页内容中处于活动状态,则附加到 | 积极的 |
有分页文本 | 布尔值 | 在寻呼机中显示当前页码和总页数,默认设置为 false。 | 错误的 |
寻呼机文本格式 | 细绳 | 如果 HasPagerText 为 true,则将显示文本格式。使用 {0} 引用当前页,使用 {0} 引用总页数,默认设置为第 {0} 页,共 {1} 页。 | 第 {0} 页,共 {1} 页。 |
有条目文本 | 布尔值 | 在分页器中显示起始项、最后一项和总条目,默认设置为 false。 | 错误的 |
条目文本格式 | 细绳 | 如果 HasEntriesText 为 true,则将显示文本格式。 {0} 指页面上的第一个条目,{1} 指页面上的最后一个条目,{2} 指条目总数,默认设置为显示 {0} 到 {1} 个条目,共 {2} 个条目。 | 显示 {0} 到 {1} 个条目,共 {2} 个条目。 |
一个三态枚举,控制 PagerList 分页控件部分的可见性。
public enum PagerDisplayMode
领域 | 描述 |
---|---|
总是 | 始终渲染。 |
绝不 | 从不渲染。 |
如果需要的话 | 仅当存在有意义的数据时才渲染(上下文相关)。 |
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , new PagerOptions { PagesToDisplay = 10 } )
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , new PagerOptions { TextToIndividualPages = "Page-{0}" } )
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , new PagerOptions { TextToPreviousPage = "Previous Page" , TextToNextPage = "Next Page" , TextToFirstPage = "First Page" , TextToLastPage = "Last Page" } )
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , new PagerOptions { TextToPreviousPage = "last-page" , TextToNextPage = "next-page" , TextToFirstPage = "first-page" , TextToLastPage = "last-page" , ClassToUl = "list-inline" , ClassToLi = "list-inline-item" , PageClass = "nopageclass" , ClassToActiveLi = "niloclass" , TextForDelimiter = " | " } )
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , new PagerOptions { TextToPreviousPage = "" , TextToNextPage = "" , TextToFirstPage = "" , TextToLastPage = "" } )
//Shows only the Previous and Next links.
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , PrePagerOptions . Minimal )
//Shows Previous and Next links along with current page number and total number of pages in pager.
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , PrePagerOptions . MinimalWithPagerText )
//Shows Previous and Next links along with index of start and last item and total entries in pager.
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , PrePagerOptions . MinimalWithEntriesText )
//Shows Previous and Next page always with default, 5 pages.
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , PrePagerOptions . ClassicPager )
//Shows Last, First, Previous and Next page always with default, 5 pages.
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) , PrePagerOptions . ClassicPagerWithFirstAndLastPages )
根据 MIT 许可证获得许可。