int start =
1, end =
10;
// 如果总页数小于结束页码
if (PageCount < end)
{
// 则结束页码为总页数
end = PageCount;
}
else
{
// 当前页大于5后开始重新计算起始页,否则起始页为1
start = PageIndex > 5 ? PageIndex - 5 : start;
// 起始页码加9减去总页数,用于查看是否超过了总页数
int result = start + 9 - PageCount;
// 如果超过总页数肯定大于0
if (result > 0)
{
end = PageCount; // 设置结束页码为总页数
start = start - result; // 超过最后页,补差
}
else
{
// 不超过总页数,起始页加9计算出结束页码
end = start + 9;
}
}
int size = PageSize;
// 总页数小于分页码数
if (PageCount < PageSize)
{
// 设置分页码个数为总页数
size = PageCount;
}
int[] rows = new int[size];
int index = 0;
for ( int i = start; i <= end;i++ )
{
rows[index] = i;
index++;
}
// 如果总页数小于结束页码
if (PageCount < end)
{
// 则结束页码为总页数
end = PageCount;
}
else
{
// 当前页大于5后开始重新计算起始页,否则起始页为1
start = PageIndex > 5 ? PageIndex - 5 : start;
// 起始页码加9减去总页数,用于查看是否超过了总页数
int result = start + 9 - PageCount;
// 如果超过总页数肯定大于0
if (result > 0)
{
end = PageCount; // 设置结束页码为总页数
start = start - result; // 超过最后页,补差
}
else
{
// 不超过总页数,起始页加9计算出结束页码
end = start + 9;
}
}
int size = PageSize;
// 总页数小于分页码数
if (PageCount < PageSize)
{
// 设置分页码个数为总页数
size = PageCount;
}
int[] rows = new int[size];
int index = 0;
for ( int i = start; i <= end;i++ )
{
rows[index] = i;
index++;
}