C#有四张datatable表将里面相同数据对应的数据组合到一张新表中,并显示到dgv中
时间: 2024-01-21 08:17:32 浏览: 77
假设你有4个 DataTable 对象,分别为 dt1、dt2、dt3、dt4,它们中存在相同的数据,你可以使用以下代码来将它们合并到一张新表并显示到 DataGridView 中:
```csharp
// 创建一个空的 DataTable 对象作为新表
DataTable dtNew = new DataTable();
// 遍历每个 DataTable 对象,将其中的列添加到新表中
foreach (DataTable dt in new DataTable[] { dt1, dt2, dt3, dt4 })
{
foreach (DataColumn col in dt.Columns)
{
if (!dtNew.Columns.Contains(col.ColumnName))
{
dtNew.Columns.Add(col.ColumnName, col.DataType);
}
}
}
// 遍历每个 DataTable 对象,将其中的行添加到新表中
foreach (DataTable dt in new DataTable[] { dt1, dt2, dt3, dt4 })
{
foreach (DataRow row in dt.Rows)
{
DataRow newRow = dtNew.NewRow();
foreach (DataColumn col in dt.Columns)
{
newRow[col.ColumnName] = row[col.ColumnName];
}
dtNew.Rows.Add(newRow);
}
}
// 将新表绑定到 DataGridView 上
dgv.DataSource = dtNew;
```
这段代码首先创建了一个空的 DataTable 对象作为新表,然后遍历每个原始表格,将其中的列添加到新表中,接着再遍历每个原始表格,将其中的行添加到新表中,最后将新表格绑定到 DataGridView 控件上。
阅读全文