C# 分页

时间:2025-04-19 07:05:08

页面加载调用:DatasLoaded(1);

private int 总页数= 0;            //pageSize表示总页数  

private const int pageShowTotal = 10;// 每页的记录数

private void DatasLoaded(int 当前页)
{
    List<Datas> dataSource = 数据集合;
    int count = dataSource.Count;          //获取记录总数  
    if (count % pageShowTotal == 0)
        总页数= count / pageShowTotal;
    else
        总页数= count / pageShowTotal + 1;


    tbkCurreniSize.Content = 当前页.ToString();
    tbkTotalPage.Content = 总页数.ToString();
    dataSource = dataSource.Take(pageShowTotal * 当前页).Skip(pageShowTotal * (当前页- 1)).ToList();
    dataGrid.ItemsSource = dataSource;
}

private void previousPage_Click(object sender, RoutedEventArgs e)
{
  int currentPage =int.Parse(tbkCurreniSize.Content.ToString());
    if (currentPage > 1)
    {
        currentPage--;
        DatasLoaded(currentPage);
    }
}

private void nextPage_Click(object sender, RoutedEventArgs e)
{
    int currentPage = int.Parse(tbkCurreniSize.Content.ToString());
    int total=  int.Parse(tbkTotalPage.Content.ToString());
    if (currentPage < total)
    {
        currentPage++;
        DatasLoaded(currentPage);
    }
}