c#常用表格控件dataGridView的分页显示

关于c#常用表格控件dataGridView的分页显示,这里提供一份完整攻略,包含以下几个部分:

  1. 准备工作
  2. 数据源绑定
  3. 分页控件的使用
  4. 代码示例
  5. 参考资料

下面对每个部分进行详细说明。

一、准备工作:

在开始使用dataGridView进行分页显示之前,需要做好一些准备工作,包括:
1. 安装并引用数据库基础组件,例如MySql.Data.dll;
2. 创建数据库及表格,并预置数据记录;
3. 创建WinForm窗体,并添加dataGridView表格控件和分页控件;
4. 在设计器中指定dataGridView的数据源为数据表格。

二、数据源绑定:

在WinForm设计器中,选择dataGridView控件,在属性面板中指定数据源、数据表以及数据列,这样dataGridView就能读取并显示所需要的数据源了。
代码示例如下:

//创建MySqlConnection对象实例,并打开连接
MySqlConnection conn = new MySqlConnection("Server=yourServerName;Database=yourDatabaseName;Uid=yourUserName;Pwd=yourPassword;SslMode=none");
conn.Open();

//创建MySqlCommand对象实例,并指定SQL查询语句
string sql = "SELECT * FROM yourTableName";
MySqlCommand cmd = new MySqlCommand(sql, conn);

//创建DataAdapter对象实例,并调用Fill方法填充DataSet对象
DataSet ds = new DataSet();
MySqlDataAdapter da = new MySqlDataAdapter(cmd);
da.Fill(ds);

//设置dataGridView的数据源及绑定关系
dataGridView1.DataSource = ds.Tables[0];

三、分页控件的使用:

一般情况下,需要使用分页控件对dataGridView进行分页显示。目前比较常用的分页控件有Pager和Paging。其中Pager是自定义分页控件,需要在WinForm设计器中添加Pager.cs文件,并调用Pager控件进行分页;Paging是第三方分页控件,可以通过NuGet安装并引用,直接调用Paging进行分页即可。

以Pager为例,代码示例如下:

//在WinForm设计器中添加Pager.cs自定义分页控件
Pager pager = new Pager();
pager.Dock = DockStyle.Bottom;
this.Controls.Add(pager);

//在代码中定义分页控件的相关属性
int recordCount = ds.Tables[0].Rows.Count;
int pageSize = 5;
pager.PageSize = pageSize;
pager.RecordCount = recordCount;
pager.CurrentPageChanged += new EventHandler(pager_CurrentPageChanged);

//在事件处理程序中实现分页查询功能
void pager_CurrentPageChanged(object sender, EventArgs e)
{
    int pageIndex = pager.CurrentPageIndex;
    int startRow = pageIndex * pageSize;
    DataTable dt = ds.Tables[0].Clone();
    for (int i = startRow; i < startRow + pageSize && i < recordCount; i++)
    {
        dt.ImportRow(ds.Tables[0].Rows[i]);
    }
    dataGridView1.DataSource = dt;
}

四、代码示例:

根据以上步骤,可以实现一个简单的dataGridView分页示例,代码如下:

//创建MySqlConnection对象实例,并打开连接
MySqlConnection conn = new MySqlConnection("Server=yourServerName;Database=yourDatabaseName;Uid=yourUserName;Pwd=yourPassword;SslMode=none");
conn.Open();

//创建MySqlCommand对象实例,并指定SQL查询语句
string sql = "SELECT * FROM yourTableName";
MySqlCommand cmd = new MySqlCommand(sql, conn);

//创建DataAdapter对象实例,并调用Fill方法填充DataSet对象
DataSet ds = new DataSet();
MySqlDataAdapter da = new MySqlDataAdapter(cmd);
da.Fill(ds);

//设置dataGridView的数据源及绑定关系
dataGridView1.DataSource = ds.Tables[0];

//在WinForm设计器中添加Pager.cs自定义分页控件
Pager pager = new Pager();
pager.Dock = DockStyle.Bottom;
this.Controls.Add(pager);

//在代码中定义分页控件的相关属性
int recordCount = ds.Tables[0].Rows.Count;
int pageSize = 5;
pager.PageSize = pageSize;
pager.RecordCount = recordCount;
pager.CurrentPageChanged += new EventHandler(pager_CurrentPageChanged);

//在事件处理程序中实现分页查询功能
void pager_CurrentPageChanged(object sender, EventArgs e)
{
    int pageIndex = pager.CurrentPageIndex;
    int startRow = pageIndex * pageSize;
    DataTable dt = ds.Tables[0].Clone();
    for (int i = startRow; i < startRow + pageSize && i < recordCount; i++)
    {
        dt.ImportRow(ds.Tables[0].Rows[i]);
    }
    dataGridView1.DataSource = dt;
}

五、参考资料:

  1. C#中DataGridView也支持分页显示了!
  2. 常用控件:dataGridView 分页
  3. 分页控件 Paging
  4. C#自动生成分页控件,DataGridView分页控件

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c#常用表格控件dataGridView的分页显示 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • Android自定义View实现五子棋游戏

    Android自定义View实现五子棋游戏攻略 1. 创建自定义View 首先,我们需要创建一个自定义View来实现五子棋游戏的界面。在Android中,我们可以继承View类来创建自定义View。 public class GobangView extends View { // 实现自定义View的代码 } 2. 初始化游戏 在自定义View中,我们需要…

    other 2023年9月7日
    00
  • Python进阶语法之类的继承

    Python进阶语法之类的继承 什么是继承? 继承是面向对象编程中的一个重要概念,它允许一个类(子类)从另一个类(父类)获得属性和方法。子类可以像父类一样使用这些属性和方法,并且还可以根据需要添加自己的属性和方法。 在 Python 中,继承实现非常简单,只需要在子类定义的时候在括号中指定父类即可。 class Parent: def parent_meth…

    other 2023年6月26日
    00
  • MySQL常见建表选项及约束

    MySQL常见建表选项及约束 在MySQL中,创建表时可以使用各种选项和约束,以确保数据的正确性和完整性。下面介绍一些常见的选项和约束: 数据类型 在创建表时,需要指定存储在列中的数据类型。常用的数据类型如下: INT: 整数。可以指定长度,如INT(10)。长度指定了显示的宽度,但不影响存储。INT的长度默认为11。 FLOAT和DOUBLE: 浮点数。F…

    其他 2023年3月28日
    00
  • 分配字节内存失败,请检查系统内存是否被耗尽?

    当你在使用计算机程序时,可能会遇到错误消息“分配字节内存失败,请检查系统内存是否被耗尽?”。这个错误消息通常表示你的计算机没有足够的可用内存来分配给程序使用。这可能是由于以下几个原因导致的: 系统内存不足:你的计算机可能没有足够的物理内存可供程序使用。这可能是因为你同时运行了太多的程序,导致系统内存被耗尽。解决这个问题的方法是关闭一些不必要的程序,以释放内存…

    other 2023年8月1日
    00
  • ts封装axios最佳实践示例详解

    TS封装Axios最佳实践示例详解 Axios是一个基于Promise的HTTP客户端,用于浏览器和Node.js环境。我们可以使用Axios来发送HTTP请求并处理响应。而在使用Axios时,封装Axios是一个不错的选择,有利于提高代码的复用性和可维护性。以下是TS封装Axios最佳实践示例的详细攻略。 环境搭建 在开始之前,确保你已安装好以下基础环境:…

    other 2023年6月25日
    00
  • XYplorer实用技巧:右键菜单使用方法

    XYplorer实用技巧:右键菜单使用方法 为什么需要右键菜单? XYplorer是一款功能强大的Windows文件管理器,其界面友好,功能强大,可以帮助用户更高效地管理自己的文件。而右键菜单则是XYplorer带有的一个很实用的功能,它可以让用户在鼠标右键点击文件或文件夹时,弹出一个菜单,帮助用户更快捷地进行文件操作。 如何使用右键菜单? 使用XYplor…

    other 2023年6月27日
    00
  • 看理想在哪更改用户名?看理想更改用户名方法

    查看理想更改用户名的方法 在查看理想更改用户名的方法之前,需要先进入理想网站登录状态。 首先,点击网站右上角的“个人中心”按钮,进入个人中心页面。 在个人中心页面,鼠标悬浮于头像上,出现下拉框,在下拉框中点击“账户管理”,进入账户管理页面。 在账户管理页面,找到“用户名”一栏,点击右侧的“修改”按钮。 在弹出的修改用户名页面中,输入新的用户名,输入完成后点击…

    other 2023年6月27日
    00
  • ai实现五子棋机器人(一)

    以下是“AI实现五子棋机器人(一)”的完整攻略: AI实现五子棋机器人(一) 五子棋是一种非常受欢迎的棋类游戏,AI技术可以用于实现五子棋机器。以下是现五子棋机器人的步骤: 创建五子棋游戏界。 在实现五子棋机器人之前,您需要创建五子棋游戏界面。您可以使用HTML、CSS和JavaScript等技术来创建游戏界面。 实现五子棋游戏逻辑 在游戏界面中,您需要实现…

    other 2023年5月7日
    00
合作推广
合作推广
分享本页
返回顶部