返回
C# Winform使用DataGridView显示表格数据
2023-10-29
4418 0DataGridView的常见应用
DataGridView是.NET框架中用于显示、编辑和操作数据表格的控件。它提供了一个灵活的方式来显示和操作大量的数据。以下是对DataGridView的一些常见应用和实现的总结:
- 数据显示:DataGridView可以用于显示来自各种数据源的数据,包括数据库、数组、列表等,可以直接将数据源绑定到DataGridView,或者通过代码逐行填充数据。
- 列自定义:可以自定义DataGridView的列,包括设置列的宽度、可见性、排序方式、文本等,还可以添加按钮列,以允许用户执行操作,如编辑、删除等。
- 行选择:DataGridView支持多选,用户可以通过Ctrl或Shift键选择多行,也可以通过代码来选择特定的行。
- 事件处理:DataGridView支持各种事件,如点击事件、数据更改事件等,可以通过编写事件处理程序来响应用户的操作,例如点击按钮列的按钮或者更改选中的行。
- 数据绑定:DataGridView可以与数据源进行双向绑定,这意味着当用户更改DataGridView中的数据时,数据源中的数据也会相应地更改,反之亦然。
- 数据排序:DataGridView支持自动和手动排序,可以通过设置SortMode属性为Automatic或Programmatic来启用自动排序。
- 分页:虽然DataGridView本身并没有内置分页功能,但可以通过在数据源中实现分页,或者使用第三方库来实现分页。
DataGridView控件的使用方法
1、创建一个Windows窗体应用程序,并添加一个DataGridView控件到窗体上。
2、在代码文件中,定义一个数据源,例如一个包含学生信息的DataTable:
DataTable students = new DataTable();
students.Columns.Add("ID", typeof(int));
students.Columns.Add("Name", typeof(string));
students.Columns.Add("Age", typeof(int));
3、将数据源绑定到DataGridView控件上:
dataGridView1.DataSource = students;
4、在DataGridView控件中添加列和行,以及设置列和行的属性:
dataGridView1.Columns["ID"].HeaderText = "学号";
dataGridView1.Columns["Name"].HeaderText = "姓名";
dataGridView1.Columns["Age"].HeaderText = "年龄";
5、添加数据到DataGridView控件中:
// 添加10条数据到DataGridView控件中
for (int i = 0; i < 10; i++)
{
DataRow row = students.NewRow();
row["ID"] = i + 1;
row["Name"] = "学生" + (i + 1);
row["Age"] = i * 2 + 10;
students.Rows.Add(row);
}
DataGridView完整应用示例
using System;
using System.Data;
using System.Windows.Forms;
namespace WinForm_DataGridView
{
public partial class Form1 : Form
{
// 定义一个DataTable作为数据源
private DataTable students = new DataTable();
public Form1()
{
InitializeComponent();
// 初始化DataGridView控件
InitializeDataGridView();
}
// 初始化DataGridView控件
private void InitializeDataGridView()
{
// 添加列到数据源
students.Columns.Add("ID", typeof(int));
students.Columns.Add("Name", typeof(string));
students.Columns.Add("Age", typeof(int));
// 将数据源绑定到DataGridView控件上
dataGridView1.DataSource = students;
// 设置列标题
dataGridView1.Columns["ID"].HeaderText = "学号";
dataGridView1.Columns["Name"].HeaderText = "姓名";
dataGridView1.Columns["Age"].HeaderText = "年龄";
}
// 加载按钮的点击事件处理程序
private void btnLoadData_Click(object sender, EventArgs e)
{
// 添加10条数据到DataGridView控件中
AddDataToDataGridView();
}
// 添加10条数据到DataGridView控件中
private void AddDataToDataGridView()
{
for (int i = 0; i < 20; i++)
{
DataRow row = students.NewRow();
row["ID"] = i + 1;
row["Name"] = "学生" + (i + 1);
row["Age"] = i * 2 + 10;
students.Rows.Add(row);
}
}
}
}
运行结果
您可能感兴趣:
阿里云 云服务器 99元1年 2核2G 3M固定带宽 续费与新购同价
领取 通义灵码 免费使用资格 兼容 Visual Studio Code、Visual Studio、JetBrains IDEs 等主流编程工具, 为你提供高效、流畅、舒心的智能编码体验!
网友点评
提交