• DataGridView在winform的分页效果


    这几天在做一个winform的小软件,用到了datagridview这个庞大而让人头疼的控件,这么一个号称先进的东东,居然没办法分页。为了软件如期完工,先用以下方法完成分页。感谢原作者的同时,发现这种方法绝对不是一个有效率的好方法,他是伪分页。因为每次分页都填充了整个DataSet,只是视觉上给人一种分页的感觉。只让用户看到当页的,其他页隐藏起来。先用用吧,有好办法再来总结。另注,此写法有问题,我又在软件中修正。

    ------------------------------------------------------------------------------------------------

    相象很多人都直接用到它在webform的分页,而winform的分页没有涉及到,今天页是刚好碰到了,找了一些资料整理下

      private void Form1_Load(object sender, EventArgs e)
            {
                // TODO: 这行代码将数据加载到表“myDBDataSet.login”中。您可以根据需要移动或移除它。
                this.loginTableAdapter.Fill(this.myDBDataSet.login);//自动添加数据时自动生成的
               
                int intMod, dgr;
                dataGridView2.ScrollBars = System.Windows.Forms.ScrollBars.None;//先让垂直滚动条消失

                dgr = dataGridView2.RowCount-1;//取出DGV的行数,为什么要减一是因为它总是多出一行给你编辑的所以那行也占用一行的空间

                if (dgr % 10 == 0)          //进行取模

                { intMod = 0; }
                else
                {
                    intMod = 1;
                }

                for (int i = 1; i <= dgr / 10+intMod; i++)   //主要时这个for循环将表一共分为几页添加到comboBox
                {
                    comboBox2.Items.Add("第" + i + "页");

                }
                comboBox2.SelectedIndex = 0; //默认选中第一个

            }

    然后在comboBox1_SelectedValueChanged事件里面添加下面代码

    private void comboBox1_SelectedValueChanged(object sender, EventArgs e)
            {
                dataGridView2.FirstDisplayedScrollingRowIndex = comboBox2.SelectedIndex * 10;
            }

  • 相关阅读:
    Core2.0知识整理
    bootbox.js官方文档
    MongoDB分片详解
    MongoDB高可用集群+MMS集群监控搭建
    使用 AcceptTcpClientAsync 进行 异步 操作
    Windows证书操作
    SQL Server查询所有的表名、字段名、注释
    【转载】ASP.NET Core Web 支付功能接入 微信-扫码支付篇
    【转载】ASP.NET Core Web 支付功能接入 支付宝-电脑网页支付篇
    C#网络编程系列文章
  • 原文地址:https://www.cnblogs.com/hyd309/p/1184429.html
Copyright © 2020-2023  润新知