在没有数据源的情况下怎么对DataGridView 动态添加行、删除行
时间: 2024-12-02 11:16:36 浏览: 14
当你需要在DataGridView控件中动态添加或删除行,而没有预先定义的数据源时,你可以通过以下步骤操作:
1. **添加行**:
- 创建一个新的DataTable对象作为临时数据存储。
- 使用DataTable的Rows.Add()方法创建新的DataRow,并填充你想要显示的字段值。
- 将这个新的DataRow绑定到DataGridView的DataSource属性上,这将自动在GridView中显示新行。
```csharp
DataTable dt = new DataTable();
dt.Columns.Add("Column1", typeof(string)); // 添加列
DataRow newRow = dt.NewRow();
newRow["Column1"] = "Value1"; // 填充值
dt.Rows.Add(newRow);
dataGridView.DataSource = dt;
```
2. **删除行**:
- 获取要删除的行的索引。
- 调用DataTable的Rows.Remove()方法,传入该索引。
- 如果DataSource还设置为刚才的DataTable,那么删除操作会反映在GridView中。
```csharp
int rowIndexToRemove = dataGridView.CurrentRow.Index;
dt.Rows.Remove(dt.Rows[rowIndexToRemove]);
dataGridView.DataSource = dt;
```
记得在实际应用中,你需要处理异常情况,比如当尝试删除不存在的行时。
阅读全文