【发布时间】:2016-02-05 10:30:41
【问题描述】:
我有一个很奇怪的问题,但我会尽量解释清楚。
我的矩阵可能有不同的列,但肯定会有一些是相同的。这是一个例子:
矩阵 1 列:块号 |角度 |扭矩
矩阵 2 列:块号 |角度 |扭矩 |速度
我的数据可以有超过 2 个矩阵,但这只是提供一个想法。
我想要达到的目标:
在我所有的数据矩阵中,我想创建一个主数据表,然后将其传递给我的 datagridview'w 数据源。它并不像添加数据那么简单,因为对于上面的示例,我想知道 Speed 列属于第二个矩阵,例如,当我过滤速度时,我从第二个矩阵中获取行。
我的第一个想法是: 1)从第一个数据矩阵开始,读取所有列名,创建一个新的数据表,只使用这些列名:
DataTable Master = new DataTable();
Master.Columns.Add("Block Number");
Master.Columns.Add("Angle");
Master.Columns.Add("Torque");
然后开始读取第一个矩阵的数据,任何名称等于我的主数据表列名称的列,追加行。
2) 在上面的例子中,我必须手动添加一个任意值,例如第一个矩阵中所有 Speed 行的 0。
3) 继续为我的所有矩阵执行此操作(必要时添加 0)。最后也是最简单的部分是设置 datagridview 的数据源:
dataGridView1.DataSource = Master;
您认为这是解决此问题的好方法吗?有更有效的替代方案吗?
【问题讨论】:
标签: c# .net winforms datagridview datatable