1. 程式人生 > >DataTable分頁

DataTable分頁

close 大小 stat pub turn display wro tar closed

技術分享
 1    /// <summary> 
 2         /// DataTable分頁 
 3         /// </summary> 
 4         /// <param name="dt">DataTable</param> 
 5         /// <param name="PageIndex">頁索引,註意:從1開始</param> 
 6         /// <param name="PageSize">每頁大小</param> 
 7         /// <returns>分好頁的DataTable數據
</returns> 第1頁 每頁10條 8 public static DataTable GetPagedTable(DataTable dt, int PageIndex, int PageSize) { 9 if (PageIndex == 0) { return dt; } 10 DataTable newdt = dt.Copy(); 11 newdt.Clear(); 12 int rowbegin = (PageIndex - 1
) * PageSize; 13 int rowend = PageIndex * PageSize; 14 15 if (rowbegin >= dt.Rows.Count) { return newdt; } 16 17 if (rowend > dt.Rows.Count) { rowend = dt.Rows.Count; } 18 for (int i = rowbegin; i <= rowend - 1; i++) { 19 DataRow newdr = newdt.NewRow();
20 DataRow dr = dt.Rows[i]; 21 foreach (DataColumn column in dt.Columns) { 22 newdr[column.ColumnName] = dr[column.ColumnName]; 23 } 24 newdt.Rows.Add(newdr); 25 } 26 return newdt; 27 } 28 29 /// <summary> 30 /// 返回分頁的頁數 31 /// </summary> 32 /// <param name="count">總條數</param> 33 /// <param name="pageye">每頁顯示多少條</param> 34 /// <returns>如果 結尾為0:則返回1</returns> 35 public static int PageCount(int count, int pageye) { 36 int page = 0; 37 int sesepage = pageye; 38 if (count % sesepage == 0) { page = count / sesepage; } else { page = (count / sesepage) + 1; } 39 if (page == 0) { page += 1; } 40 return page; 41 }
View Code

DataTable分頁