datagridview已经通过DataGridView1.Rows.Add();赋值,如何取出BindingSource,再赋值给DataSource
时间: 2024-10-15 19:16:21 浏览: 24
在.NET的Windows Forms中,如果你已经在DataGridView中添加了数据,通常你会使用`DataSource`属性将数据绑定到一个` BindingSource`。当你想从`DataGridView`取回`BindingSource`并重新赋值给`DataSource`,可以按照以下步骤操作:
1. 创建或获取`BindingSource`实例,如果还没有创建的话:
```csharp
BindingSource bindingSource = new BindingSource();
```
2. 将数据源设置给`DataGridView`:
```csharp
dataGridView1.DataSource = bindingSource; // 假设dataGridView1是你 DataGridView 的名称
```
3. 添加数据后,数据会自动填充到`bindingSource`。现在你可以直接操作`bindingSource`,例如从数据库、数组或其他数据结构获取新数据。
4. 当你需要更新`DataSource`时,先清空现有数据:
```csharp
bindingSource.DataSource = null;
```
5. 然后再次设置新的数据源:
```csharp
// 这里假设你已经有了新的数据集newDataSet
bindingSource.DataSource = newDataSet;
```
6. 最后,确保更新DataGridView:
```csharp
dataGridView1.DataSource = bindingSource;
```
记住,如果你的数据是在`DataTable`上,可以直接使用`DataTable`替换`newDataSet`。
阅读全文