พี.เพจเจอร์
P.Pager เป็นแพ็คเกจน้ำหนักเบาสำหรับการเพจผ่าน IEnumerable/IQueryable ใด ๆ ได้อย่างง่ายดาย สับเป็น "หน้า" และดึง "หน้า" ที่เฉพาะเจาะจงตามดัชนี รองรับโครงการเว็บ, Winforms, WPF, Window Phone, Silverlight และโครงการ .NET อื่นๆ มีการกำหนดค่าเริ่มต้นเป็น > Bootstrap 3.3.1
ติดตั้ง P.Pager.Mvc ผ่าน NuGet สิ่งนี้จะติดตั้ง P.Pager โดยอัตโนมัติ
Install-Package P.Pager.Mvc -Version 3.0.0
ติดตั้ง P.Pager.Mvc.Core ผ่าน NuGet สิ่งนี้จะติดตั้ง P.Pager โดยอัตโนมัติ
Install-Package P.Pager.Mvc.Core -Version 3.0.0
ติดตั้ง P.Pager.Mvc.Core ผ่าน NuGet สิ่งนี้จะติดตั้ง 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 โดยส่งผ่านอินสแตนซ์ของเพจเจอร์และฟังก์ชันที่จะสร้าง URL สำหรับแต่ละเพจเพื่อดูการควบคุมเพจ
//Default Pager options
@Html . Pager ( ( IPager ) Model , page => Url . Action ( "Index" , new { page } ) )
ตัวเลือกเริ่มต้นสำหรับการแสดงการแบ่งหน้า
ตัวเลือก | พิมพ์ | สรุป | ค่าเริ่มต้น |
---|---|---|---|
แสดงหน้าแรก | โหมดเพจเจอร์ดิสเพลย์ | หากตั้งค่าเป็นเสมอ ให้แสดงไฮเปอร์ลิงก์ไปยังหน้าแรกในรายการ ถ้าตั้งค่าเป็น IfNeeded ให้แสดงไฮเปอร์ลิงก์เฉพาะเมื่อหน้าแรกไม่สามารถมองเห็นได้ในตัวควบคุมการแบ่งหน้า | หากจำเป็น |
แสดงหน้าสุดท้าย | โหมดเพจเจอร์ดิสเพลย์ | หากตั้งค่าเป็นเสมอ ให้แสดงไฮเปอร์ลิงก์ไปยังหน้าสุดท้ายในรายการ ถ้าตั้งค่าเป็น IfNeeded ให้แสดงไฮเปอร์ลิงก์เฉพาะเมื่อไม่สามารถมองเห็นหน้าสุดท้ายในตัวควบคุมการแบ่งหน้า | หากจำเป็น |
แสดงหน้าก่อนหน้า | โหมดเพจเจอร์ดิสเพลย์ | หากตั้งค่าเป็น Always ให้แสดงไฮเปอร์ลิงก์ไปยังหน้าก่อนหน้าของรายการ หากตั้งค่าเป็น IfNeeded ให้แสดงไฮเปอร์ลิงก์เมื่อมีหน้าก่อนหน้าในรายการเท่านั้น | หากจำเป็น |
แสดงหน้าถัดไป | โหมดเพจเจอร์ดิสเพลย์ | หากตั้งค่าเป็น Always ให้แสดงไฮเปอร์ลิงก์ไปยังหน้าถัดไปของรายการ หากตั้งค่าเป็น IfNeeded ให้แสดงไฮเปอร์ลิงก์เมื่อมีหน้าถัดไปในรายการเท่านั้น | หากจำเป็น |
PagesToDisplay | อินเตอร์? | จำนวนหน้าที่จะแสดงในการแบ่งหน้า โดยค่าเริ่มต้นคือ 5 | 5 |
มีเพจส่วนบุคคล | บูล | แสดงหมายเลขหน้า | จริง |
TextToIndividualPages | เชือก | ข้อความที่จัดรูปแบบเพื่อแสดงภายในไฮเปอร์ลิงก์ ใช้ {0} เพื่ออ้างอิงหมายเลขหน้า โดยค่าเริ่มต้นจะตั้งค่าเป็น {0} | {0} |
TextForDelimiter | เชือก | ซึ่งจะปรากฏระหว่างหมายเลขหน้าแต่ละหมายเลข หากเว้นว่างหรือเว้นวรรค จะไม่มีการแสดงเส้นแบ่ง | โมฆะ |
ฮาสวงรี | บูล | เพิ่มวงรีเมื่อหมายเลขหน้าทั้งหมดไม่แสดง โดยค่าเริ่มต้นจะเป็นจริง | จริง |
EllipsesFormat | เชือก | ข้อความที่จัดรูปแบบจะแสดงเมื่อทุกหน้าไม่แสดง โดยค่าเริ่มต้นจะเป็น ... | - |
TextToFirstPage | เชือก | ข้อความที่จัดรูปแบบเพื่อแสดงสำหรับลิงก์หน้าแรก โดยค่าเริ่มต้นจะตั้งค่าเป็น << | - |
ข้อความถึงหน้าก่อนหน้า | เชือก | ข้อความที่จัดรูปแบบเพื่อแสดงสำหรับลิงก์ของหน้าก่อนหน้า โดยค่าเริ่มต้นจะตั้งค่าเป็น < | - |
TextToNextPage | เชือก | ข้อความที่จัดรูปแบบเพื่อแสดงสำหรับลิงก์หน้าถัดไป โดยค่าเริ่มต้นจะตั้งค่าเป็น > | - |
TextToLastPage | เชือก | ข้อความที่จัดรูปแบบเพื่อแสดงสำหรับลิงก์หน้าสุดท้าย โดยค่าเริ่มต้นจะตั้งค่าเป็น >> | - |
ClassToPagerคอนเทนเนอร์ | เชือก | คลาส Css ที่จะต่อท้ายองค์ประกอบ ในเนื้อหาเพจ โดยค่าเริ่มต้นจะถูกตั้งค่าเป็นคอนเทนเนอร์เพจเจอร์ | คอนเทนเนอร์ |
คลาสทูอูล | เชือก | คลาส CSS ที่จะต่อท้ายองค์ประกอบ
| การแบ่งหน้า |
คลาสทูลี | เชือก | คลาส CSS ที่จะต่อท้ายองค์ประกอบ | รายการหน้า |
เพจคลาส | เชือก | คลาส CSS ที่จะต่อท้ายองค์ประกอบ / ในเนื้อหาเพจ โดยค่าเริ่มต้นจะถูกตั้งค่าเป็นลิงก์หน้า | ลิงค์หน้า |
ClassToActiveLi | เชือก | คลาส CSS ที่จะต่อท้ายองค์ประกอบ | คล่องแคล่ว |
HasPagerText | บูล | การแสดงหมายเลขหน้าปัจจุบันและจำนวนหน้าทั้งหมดในเพจเจอร์ โดยค่าเริ่มต้นจะถูกตั้งค่าเป็นเท็จ | เท็จ |
รูปแบบข้อความเพจเจอร์ | เชือก | รูปแบบข้อความจะแสดงหาก HasPagerText เป็นจริง ใช้ {0} เพื่ออ้างอิงถึงหน้าปัจจุบัน และ {0} เพื่ออ้างอิงจำนวนหน้าทั้งหมด โดยค่าเริ่มต้นจะถูกตั้งค่าเป็นหน้า {0} จาก {1} | หน้า {0} จาก {1} |
มีข้อความรายการ | บูล | การแสดงรายการเริ่มต้น รายการสุดท้าย และรายการทั้งหมดในเพจเจอร์ โดยค่าเริ่มต้นจะถูกตั้งค่าเป็นเท็จ | เท็จ |
รายการข้อความรูปแบบ | เชือก | รูปแบบข้อความจะแสดงหาก HasEntriesText เป็นจริง {0} อ้างถึงรายการแรกบนหน้า {1} อ้างถึงรายการสุดท้ายบนหน้า และ {2} อ้างถึงจำนวนรายการทั้งหมด โดยค่าเริ่มต้นจะถูกตั้งค่าเป็นแสดง {0} ถึง {1} จาก {2} รายการ | กำลังแสดงรายการ {0} ถึง {1} จาก {2} รายการ |
enum ไตรสเตตที่ควบคุมการมองเห็นส่วนต่างๆ ของตัวควบคุมเพจเจอร์ลิสต์
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