C# DataGridView 数据操作详解:增删改实现与样式设置
5星 · 超过95%的资源 需积分: 44 120 浏览量
更新于2023-03-03
7
收藏 30KB DOC 举报
在C#编程中,DataGridView是一个强大的控件,常用于显示和管理表格数据。本文将详细介绍如何使用C#对DataGridView进行添加、修改和删除数据操作,以配合本地MySQL数据库进行操作。
首先,我们需要设置数据库连接。在代码中,一个名为`dbconn`的函数被定义,它接受SQL查询字符串作为参数。这个函数创建一个`MySqlConnection`对象,通过构造函数设置连接字符串,包括主机名、数据库名称、用户名和密码。接着,打开连接,创建一个`MySqlDataAdapter`实例来执行SQL查询,并填充到一个新的`DataTable`对象中。最后关闭数据库连接并返回填充好的数据表。
```csharp
private DataTable dbconn(string strSql)
{
string strconn = "host=localhost;database=test;username=root;password=...";
MySqlConnection conn = new MySqlConnection();
conn.ConnectionString = strconn;
conn.Open();
this.adapter = new MySqlDataAdapter(strSql, conn);
DataTable dtSelect = new DataTable();
adapter.Fill(dtSelect);
conn.Close();
return dtSelect;
}
```
对于DataGridView的操作,我们需要确保其列布局合适。`setDgStyle`函数用于设定DataGridView的样式,其中创建了一个名为`colDel`的DataGridViewCheckBoxColumn,用于标记行是否需要删除。该列的属性包括DataPropertyName(Del)、Name、FalseValue和TrueValue,以及宽度、排序模式和文本对齐方式。这样,用户可以通过选择或取消选择这个复选框来进行行的删除操作。
```csharp
private void setDgStyle()
{
this.dgvSelect.Columns.Clear();
DataGridViewCheckBoxColumn colDel = new DataGridViewCheckBoxColumn();
colDel.DataPropertyName = "Del";
colDel.Name = "Del";
colDel.Selected = false;
colDel.FalseValue = "0";
colDel.TrueValue = "1";
colDel.Width = 40;
colDel.SortMode = DataGridViewColumnSortMode.NotSortable;
colDel.HeaderText = "删除";
colDel.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
colDel.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
this.dgvSelect.Columns.Add(colDel);
}
```
进行实际的数据操作时,可以使用以下步骤:
1. 添加数据:当你有新的数据要插入DataGridView,可以先将其转换为DataTable,然后调用DataGridView的`DataSource`属性设置数据源。
```csharp
DataTable newData = GetDataFromYourSource(); // 获取新数据
dgvSelect.DataSource = newData;
```
2. 修改数据:在用户选中特定行后,可以从DataTable获取数据,进行修改,然后再更新DataGridView。例如,假设有一个字段`Name`:
```csharp
DataRow row = dgvSelect.CurrentRow;
string newName = GetEditedValue(row["Name"]); // 获取编辑后的值
row["Name"] = newName;
dgvSelect.DataSource = null; // 清除数据源,强制更新
dgvSelect.DataSource = dtSelect; // 重新设置数据源
```
3. 删除数据:通过检查`colDel`中的值,可以实现删除功能。当用户勾选删除复选框时,可以选择相应的行并执行删除操作:
```csharp
if (dgvSelect.Rows[rowIndex].Cells["Del"].Value == true)
{
dtSelect.Rows.RemoveAt(rowIndex); // 从DataTable中删除
dgvSelect.Rows.Remove(dgvSelect.Rows[rowIndex]); // 从DataGridView中删除
}
```
以上就是在C#中使用DataGridView进行添加、修改和删除数据操作的基本流程,结合MySQL数据库,可以根据实际需求进一步定制和完善。
点击了解资源详情
点击了解资源详情
点击了解资源详情
127 浏览量
184 浏览量
312 浏览量
106 浏览量
2021-06-29 上传
232 浏览量
明明很爱你
- 粉丝: 0
- 资源: 33
最新资源
- JavaScript实现的高效pomodoro时钟教程
- CMake 3.25.3版本发布:程序员必备构建工具
- 直流无刷电机控制技术项目源码集合
- Ak Kamal电子安全客户端加载器-CRX插件介绍
- 揭露流氓软件:月息背后的秘密
- 京东自动抢购茅台脚本指南:如何设置eid与fp参数
- 动态格式化Matlab轴刻度标签 - ticklabelformat实用教程
- DSTUHack2021后端接口与Go语言实现解析
- CMake 3.25.2版本Linux软件包发布
- Node.js网络数据抓取技术深入解析
- QRSorteios-crx扩展:优化税务文件扫描流程
- 掌握JavaScript中的算法技巧
- Rails+React打造MF员工租房解决方案
- Utsanjan:自学成才的UI/UX设计师与技术博客作者
- CMake 3.25.2版本发布,支持Windows x86_64架构
- AR_RENTAL平台:HTML技术在增强现实领域的应用