zoukankan      html  css  js  c++  java
  • Winform DataGridView 自定义分页

    需要一个、BindingNavigate、BindingSource控件,分别命名为PageOperation,dataSource;

    首先,定义私有字段:

            private int pageTotal;

            private int pageSize = 10;

            private int pageIndex = 1;

    然后是赋值 dataSource.DataSource = list;


    #region 分页相关

            //分页操作

            private void PageOperation(ToolStripItemClickedEventArgs e)

            {

                if (e.ClickedItem.Text == "首页")

                {

                    FirstPageOperation();

                }

                if (e.ClickedItem.Text == "上一页")

                {

                    PrevPageOperation();

                }

                if (e.ClickedItem.Text == "下一页")

                {

                    NextPageOperation();

                }

                if (e.ClickedItem.Text == "尾页")

                {

                    LastPageOperation();

                }

            }

            //尾页

            private void LastPageOperation()

            {

                pageIndex = pageTotal;

                if (pageIndex + 1 >= pageTotal)

                {

                    PageWithLastOfNext(false);

                }

                if (pageTotal > 1)

                {

                    PageWithPrevOfFirst(true);

                }

            }

            //下一页

            private void NextPageOperation()

            {

                if (pageIndex + 1 >= pageTotal)

                {

                    PageWithLastOfNext(false);

                }

                pageIndex++;

                if (pageTotal > 1)

                {

                    PageWithPrevOfFirst(true);

                }

            }

            //上一页

            private void PrevPageOperation()

            {

                if (pageIndex - 1 <= 1)

                {

                    PageWithPrevOfFirst(false);

                }

                pageIndex--;

                if (pageTotal > 1)

                {

                    PageWithLastOfNext(true);

                }

            }

            //首页

            private void FirstPageOperation()

            {

                pageIndex = 1;

                if (pageIndex - 1 <= 1)

                {

                    PageWithPrevOfFirst(false);

                }

                if (pageTotal > 1)

                {

                    PageWithLastOfNext(true);

                }

            }


            private void PageWithPrevOfFirst(bool enabled)

            {

                        itemPagePrev.Enabled = enabled;

                        iitemPageFirst.Enabled = enabled;

            }


            private void PageWithLastOfNext(bool enabled)

            {

                        itemPageLast.Enabled = enabled;

                        itemPageNext.Enabled = enabled;

            }


            #endregion



  • 相关阅读:
    CDN 机制
    canvas绘制旋转图形
    前端资源网站
    css中的em用法
    响应式网页设计【转载】
    闭包与非闭包
    跨域文档之间的访问
    ajax跨域之---服务器端代理实现
    jsonp跨域实现
    freemarker 命名空间
  • 原文地址:https://www.cnblogs.com/rsls/p/4364120.html
Copyright © 2011-2022 走看看