521msh

初来乍到
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

DataTable分页

Posted on 2010-10-09 11:38  爱好学习的人  阅读(1406)  评论(0编辑  收藏  举报
 1         /// <summary>
 2         /// 对DataTable进行分页,起始页为1
 3         /// </summary>
 4         /// <param name="dt"></param>
 5         /// <param name="PageIndex"></param>
 6         /// <param name="PageSize"></param>
 7         /// <returns></returns>
 8        public static DataTable GetPagedTable(DataTable dt, int PageIndex, int PageSize)
 9         {
10             if (PageIndex == 0)
11                 return dt;
12             DataTable newdt = dt.Copy();
13             newdt.Clear();
14 
15             int rowbegin = (PageIndex - 1* PageSize;
16             int rowend = PageIndex * PageSize;
17 
18             if (rowbegin >= dt.Rows.Count)
19                 return newdt;
20 
21             if (rowend > dt.Rows.Count)
22                 rowend = dt.Rows.Count;
23             for (int i = rowbegin; i <= rowend - 1; i++)
24             {
25                 DataRow newdr = newdt.NewRow();
26                 DataRow dr = dt.Rows[i];
27                 foreach (DataColumn column in dt.Columns)
28                 {
29                     newdr[column.ColumnName] = dr[column.ColumnName];
30                 }
31                 newdt.Rows.Add(newdr);
32             }
33 
34             return newdt;
35         }