• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#翻页设计:首页,上一页,下一页,末页,跳转

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
 int pageSize = 0;     //每页显示行数
        int nMax = 0;         //总记录数
        int pageCount = 0;    //页数=总记录数/每页显示行数
        int pageCurrent = 0;   //当前页号
        int nCurrent = 0;      //当前记录行       
private void Bind()
        {
            //td = um.dataAll();
            pageSize = 30;      //设置页面行数
            nMax = td.Rows.Count;
            pageCount = (nMax / pageSize);    //计算出总页数
            if ((nMax % pageSize) > 0) pageCount++;
            pageCurrent = 1;    //当前页数从1开始
            nCurrent = 0;       //当前记录数从0开始
            LoadData();

        }
private void LoadData()
        {
            int nStartPos = 0;   //当前页面开始记录行
            int nEndPos = 0;     //当前页面结束记录行
            DataTable dtTemp = td.Clone();   //克隆DataTable结构框架

            if (pageCurrent == pageCount)
            {
                nEndPos = nMax;
            }
            else
            {
                nEndPos = pageSize * pageCurrent;
            }

            nStartPos = nCurrent;
            lblPageCount.Text = "共 " + pageCount.ToString() + " 页";
            txtCurrentPage.Text = Convert.ToString(pageCurrent);


            //从元数据源复制记录行
            if (td.Rows.Count > 0)
            {
                for (int i = nStartPos; i < nEndPos; i++)
                {
                    dtTemp.ImportRow(td.Rows[i]);
                    nCurrent++;
                }
            }
           
            dataGridView1.DataSource = dtTemp;
            //datagridView默认不选中行
           
            int endC = td.Rows.Count;
            if (endC > pageSize * pageCurrent)

                endC = pageSize * pageCurrent;
            int k = 0;

            for (int i = pageSize * (pageCurrent - 1) + 1; i <= endC; i++)
            {


                dataGridView1.Rows[k].HeaderCell.Value = i.ToString();
                k++;
            }
           
           
        }
private void up_Click(object sender, EventArgs e)
        {
            pageCurrent--;
            if (pageCurrent <= 0)
            {
                MessageBox.Show("已经是第一页,请点击“下一页”查看!");
                return;
            }
            else
            {
                nCurrent = pageSize * (pageCurrent - 1);
            }
            LoadData();

        }

        private void down_Click(object sender, EventArgs e)
        {
            pageCurrent++;
            if (pageCurrent > pageCount)
            {
                MessageBox.Show("已经是最后一页,请点击“上一页”查看!");
                return;
            }
            else
            {
                nCurrent = pageSize * (pageCurrent - 1);
            }
            LoadData();

        }

        private void first_Click(object sender, EventArgs e)
        {
            pageCurrent = 1;
            nCurrent = pageSize * (pageCurrent - 1);
            LoadData();

        }

        private void end_Click(object sender, EventArgs e)
        {
            pageCurrent = pageCount;
            nCurrent = pageSize * (pageCurrent - 1);
            LoadData();
        }

        private void skip_Click(object sender, EventArgs e)
        {
            int CurrentP = Convert.ToInt32(txtCurrentPage.Text.ToString());
            if (CurrentP > pageCount)
            {
                MessageBox.Show("超过最大页数,请重新输入");
                return;
            }
            else
            {
                pageCurrent = CurrentP;
                nCurrent = pageSize * (pageCurrent - 1);
                LoadData();
            }
        }

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
SVN自动更新测试服务器工作副本(C#写winform程序实现)发布时间:2022-07-10
下一篇:
C#中的委托是什么发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap