การแบ่งหน้าเป็นหนึ่งในฟังก์ชันที่ใช้บ่อยที่สุดในเว็บแอปพลิเคชัน ใน ASP.NET แม้ว่าจะมาพร้อมกับ DataGrid (asp.net 1.1) และ GridView (asp.net) 2.0) การควบคุม แต่ฟังก์ชันการเพจไม่เป็นที่น่าพอใจ เช่น ความสามารถในการปรับแต่งได้ไม่ดี ไม่สามารถใช้งานฟังก์ชันการเพจผ่าน Url ได้ ฯลฯ และบางครั้งเราจำเป็นต้องแบ่งหน้า DataList, Repeater หรือแม้แต่การควบคุมการผูกข้อมูลแบบกำหนดเอง และเขียนโค้ดการเพจด้วยตนเอง ไม่ใช่ เพียงแต่ว่ามันยากในทางเทคนิค งานน่าเบื่อ และอัตราการใช้โค้ดซ้ำต่ำมาก ดังนั้นการเพจจึงกลายเป็นหนึ่งในปัญหาที่ลำบากที่สุดสำหรับโปรแกรมเมอร์ ASP.NET จำนวนมาก
เพื่อตอบสนองต่อข้อบกพร่องของการควบคุมเพจของ ASP.NET AspNetPager เสนอวิธีแก้ปัญหาเฉพาะสำหรับปัญหาเพจใน ASP.NET นั่นคือฟังก์ชันการนำทางเพจและฟังก์ชันการแสดงข้อมูลมีความเป็นอิสระอย่างสมบูรณ์ และผู้ใช้ควบคุมการรับและการแสดงผล ของข้อมูลจึงสามารถนำไปใช้กับคู่มือหน้าใด ๆ ที่ต้องดำเนินการได้อย่างยืดหยุ่น ในกรณีที่ใช้ฟังก์ชันการนำทาง เช่น การใช้เพจสำหรับการควบคุมที่ผูกกับข้อมูล เช่น GridView, DataList และ Repeater การนำเสนอข้อมูลเพจแบบกำหนดเอง และการสร้างโปรแกรมเรียกดูรูปภาพ เป็นต้น เนื่องจากตัวควบคุม AspNetPager และข้อมูลมีความเป็นอิสระ ข้อมูล การเพจสามารถมาจากแหล่งข้อมูลใดก็ได้ เช่น SQL เซิร์ฟเวอร์, Oracle, Access, mysql, DB2 และฐานข้อมูลอื่น ๆ รวมถึงไฟล์ XML ข้อมูลหน่วยความจำหรือข้อมูลในแคช ระบบไฟล์ ฯลฯ
AspNetPager เวอร์ชัน 7.2 เปิดตัวแล้ว
คุณลักษณะใหม่ PagingButtonLayoutType สามารถใช้เพื่อตั้งค่าโหมดโครงร่างขององค์ประกอบการนำทางเพจ (ดัชนีหน้าตัวเลข หน้าก่อนหน้า หน้าถัดไป หน้าแรก และหน้าสุดท้าย) ค่าของแอตทริบิวต์นี้คือการแจงนับ PagingButtonLayoutType .UnorderedList หรือ PagingButtonLayoutType Span อนุญาตให้รวมองค์ประกอบการนำทางการแบ่งหน้าเหล่านี้ไว้ระหว่างแท็ก และ หรือ และ เพื่ออำนวยความสะดวกในการใช้สไตล์ CSS กับองค์ประกอบการแบ่งหน้าเหล่านี้
เพิ่มคุณสมบัติ PagingButtonClass และ PagingButtonStyle ซึ่งสามารถตั้งค่าสไตล์ CSS สำหรับปุ่มนำทางเพจ (ดัชนีหน้าตัวเลข หน้าก่อนหน้า หน้าถัดไป หน้าแรก และหน้าสุดท้าย) ทีละรายการ
คุณสมบัติ FirstLastButtonClass และ FirstLastButtonStyle ที่เพิ่มเข้ามาใหม่ คุณสามารถตั้งค่าสไตล์ CSS สำหรับปุ่มนำทางเพจหลักและหน้าสุดท้ายแยกกัน หากไม่ได้ตั้งค่าคุณสมบัตินี้ แต่ระบุค่าของคุณสมบัติ PagingButtonClass และ PagingButtonStyle ปุ่มโฮมเพจและหน้าสุดท้าย สไตล์จะใช้คุณสมบัติ PagingButtonClass และ PagingButtonStyle สไตล์ที่ระบุใน;
เพิ่มคุณสมบัติ NextPrevButtonClass และ NextPrevButtonStyle คุณสามารถตั้งค่าสไตล์ CSS สำหรับปุ่มการนำทางเพจก่อนหน้าและถัดไปแยกกัน หากไม่ได้ตั้งค่าคุณสมบัตินี้ แต่ระบุค่าของคุณสมบัติ PagingButtonClass และ PagingButtonStyle รูปแบบปุ่มหน้าก่อนหน้าและถัดไป จะใช้ PagingButtonClass และสไตล์ที่ระบุในคุณสมบัติ PagingButtonStyle
เพิ่มคุณสมบัติ MoreButtonClass และ MoreButtonStyle คุณสามารถตั้งค่าสไตล์ CSS สำหรับปุ่มนำทางเพจเพิ่มเติม (...) แยกต่างหาก หากไม่ได้ตั้งค่าคุณสมบัตินี้ แต่ระบุค่าของคุณสมบัติ PagingButtonClass และ PagingButtonStyle หน้าก่อนหน้า และสไตล์ปุ่มหน้าถัดไปจะใช้สไตล์ที่ระบุในคุณสมบัติ PagingButtonClass และ PagingButtonStyle
เพิ่มคุณลักษณะใหม่ ShowMoreButtons ซึ่งสามารถระบุว่าจะแสดงปุ่มหน้าเพิ่มเติมหรือไม่
คุณลักษณะใหม่ CurrentPageButtonPosition สามารถตั้งค่าให้แสดงดัชนีหน้าปัจจุบันในดัชนีหน้าดิจิทัลทั้งหมดหลังจากแต่ละเพจ ค่าแอตทริบิวต์คือการแจงนับ PagingButtonPosition ค่าที่สอดคล้องกันและคำอธิบายมีดังนี้
เริ่มต้น: ดัชนีตัวเลขของหน้าปัจจุบันจะแสดงที่ด้านหน้าของดัชนีหน้าตัวเลขทั้งหมดเสมอ
สิ้นสุด: ดัชนีดิจิทัลของหน้าปัจจุบันจะแสดงที่ส่วนท้ายของดัชนีหน้าดิจิทัลทั้งหมดเสมอ
กึ่งกลาง: ดัชนีดิจิทัลของหน้าปัจจุบันจะแสดงตรงกลางดัชนีหน้าดิจิทัลทั้งหมดเสมอ
คงที่: ค่าเริ่มต้น คงที่;
คุณสมบัติ CssClass ของตัวควบคุมจะถูกนำไปใช้กับองค์ประกอบหน้าต่าง (div) ของตัวควบคุมเท่านั้น และจะไม่ถูกนำไปใช้กับองค์ประกอบการเพจย่อยอีกต่อไป
คุณสมบัติ CenterCurrentPageButton ถูกยกเลิกและสามารถถูกแทนที่ด้วยคุณสมบัติ CurrentPageButtonPosition
แก้ไขคุณสมบัติ CurrentPageIndexn ซึ่งช่วยให้คุณสามารถตั้งค่าของ CurrentPageIndex โดยทางโปรแกรมได้ทุกที่ในโปรแกรมเพื่อระบุเพจปัจจุบันแบบไดนามิก การตั้งค่าของคุณสมบัตินี้โดยตรงจะทริกเกอร์เหตุการณ์ PageChanging และ PageChanged ในเวลาเดียวกัน ทำให้ได้ฟังก์ชันเพจจิ้งเดียวกันกับ คลิกปุ่มเพจ;
แก้ไขข้อบกพร่องในเวอร์ชัน 7.1 ว่าหลังจากตั้งค่าแอตทริบิวต์ SubscriptionImageUrl แล้ว การคลิกปุ่มดัชนีหน้าดิจิทัลในโหมดเพจ Postback ไม่ได้ทำให้เกิดเหตุการณ์การเพจ
แก้ไขข้อบกพร่องที่ไม่สามารถลงทะเบียนสคริปต์ไคลเอนต์ได้หากไม่มีการควบคุมฟอร์มฝั่งเซิร์ฟเวอร์บนเพจเมื่อใช้เพจ Url จากเวอร์ชัน 7.2 หากใช้เพจ Url และคุณสมบัติ ShowPageIndexBox ไม่ได้ตั้งค่าเป็น Never จะต้องควบคุม AspNetPager วางอยู่ระหว่างแท็ก หากใช้การเพจ Url และ ShowPageIndexBox เป็น Never ก็ไม่จำเป็นต้องใช้การควบคุมแบบฟอร์มฝั่งเซิร์ฟเวอร์บนเพจ
ฟังก์ชั่นหลักของ AspNetPager
1. รองรับการเพจผ่าน Url
นอกเหนือจากการให้วิธีการเพจ PostBack เริ่มต้นที่คล้ายคลึงกับ DataGrid และ GridView แล้ว AspNetPager ยังรองรับการเพจผ่าน Url เช่นเดียวกับการเพจในโปรแกรม asp ส่วนใหญ่ วิธีการแบ่งหน้า Url ช่วยให้ผู้ใช้สามารถเข้าสู่หน้าที่ระบุได้โดยตรงโดยการป้อนที่อยู่ที่เกี่ยวข้องในแถบที่อยู่ของเบราว์เซอร์ นอกจากนี้ยังช่วยให้เครื่องมือค้นหาสามารถค้นหาเนื้อหาของหน้าที่แบ่งหน้าทั้งหมดได้ ดังนั้นจึงมีข้อดีคือใช้งานง่ายและเครื่องมือค้นหา -ความเป็นมิตร เกี่ยวกับ Url สำหรับความแตกต่างระหว่างวิธีเพจและ PostBack โปรดดูการเปรียบเทียบระหว่างวิธีเพจ Url และ PostBack
2. รองรับฟังก์ชันเขียน URL ใหม่ (UrlRewrite) ในโหมดเพจ Url
เทคโนโลยีการเขียน URL ใหม่สามารถทำให้ Url ที่แสดงต่อผู้ใช้แตกต่างจากเทคโนโลยีการเขียน Url จริงถูกนำมาใช้อย่างกว้างขวางในการเพิ่มประสิทธิภาพกลไกค้นหา (SEO) การเปลี่ยนเส้นทางเส้นทางของหน้าหลังจากการจัดระเบียบเว็บไซต์ใหม่ และการจัดหา Url ที่ใช้งานง่ายรองรับเทคโนโลยีการเขียนใหม่ Url ช่วยให้คุณปรับแต่งรูปแบบ URL ของการนำทางเพจและใช้การเขียน URL ใหม่
3. รองรับการใช้รูปภาพที่ผู้ใช้กำหนดเป็นองค์ประกอบการนำทาง
คุณสามารถใช้ไฟล์รูปภาพแบบกำหนดเองเป็นองค์ประกอบการนำทางสำหรับการควบคุมเพจแทนที่จะแสดงเพียงเนื้อหาข้อความ
4. ทรงพลังและยืดหยุ่น ใช้งานง่าย และปรับแต่งได้สูง
องค์ประกอบการนำทางทั้งหมดของตัวควบคุมเพจ AspNetPager สามารถควบคุมได้เป็นรายบุคคล เริ่มตั้งแต่เวอร์ชัน 6.0 AspNetPager รองรับการใช้ธีม (ธีม) และสกิน (สกิน) เพื่อรวมสไตล์โดยรวมของตัวควบคุม .net 2.0, AspNetPager เท่านั้น คุณจะต้องเขียนโค้ดเพียงไม่กี่บรรทัดหรือไม่ต้องเขียนโค้ดเลย คุณจะต้องตั้งค่าคุณสมบัติบางอย่างเพื่อใช้ฟังก์ชันเพจจิ้ง
5. การสนับสนุนเวลาออกแบบ Visual Studio 2005/2008 ที่ได้รับการปรับปรุง
การสนับสนุนเวลาออกแบบที่ได้รับการปรับปรุงทำให้การควบคุมง่ายขึ้นในขณะออกแบบ ใช้งานง่ายขึ้น รวดเร็วและสะดวกยิ่งขึ้นในการพัฒนา
6. เข้ากันได้กับเบราว์เซอร์เช่น IE6.0+ และ FireFox 1.5+
7. เอกสารการควบคุมที่สมบูรณ์และสมบูรณ์และโครงการตัวอย่าง
เอกสารช่วยเหลือฉบับสมบูรณ์และโครงการตัวอย่างที่มาพร้อมกับตัวควบคุมสามารถช่วยให้คุณเริ่มต้นได้อย่างรวดเร็วและคุ้นเคยกับการใช้ตัวควบคุม AspNetPager คุณยังสามารถแก้ไขปัญหาที่พบในการใช้ตัวควบคุมได้โดยฝากข้อความถึงผู้เขียนและถามคำถาม ฟอรัม