【发布时间】:2016-08-03 18:03:18
【问题描述】:
C#、.Net 4、VS2010
我有一个包含多个双精度数组的对象(最近将它们制成列表)。它看起来像:
public class Channel
{
public List<DateTime> Date = new List<DateTime>(); //DateTime
public List<double> Val1 = new List<double>(); //
public List<double> Val2 = new List<double>(); //
public List<double> Val3 = new List<double>(); //
public List<double> Val4 = new List<double>(); //
}
所以现在我尝试用DataSource 填充DataGridView,但我只关心Date、Val1 和Val2。我怎样才能做到这一点?
目前我正在遍历数组并将它们逐行添加到DataGridView。但这真的很慢,因为我有一个庞大的数据文件要处理。难道没有一种简单的方法来绑定我的数组并填充网格吗?我好像搞不懂。
谢谢
我试过的代码:
Channel ch = new Channel();
List<object> datasource = new List<object>();
dataGridView1.Rows.Clear();
dataGridView1.Columns.Clear();
datasource.Add(ch.spotsList[0].Date);
datasource.Add(ch.spotsList[0].Val1);
datasource.Add(ch.spotsList[0].Val2);
dataGridView1.DataSource = datasource;
我正在使用的代码可以运行,但速度很慢:
for (int i = 0; i < ch.spotsList[0].Date.Count; i++)
{
dataGridView1.Rows.Add(ch.spotsList[0].Date[i].ToString("yyyy-MM-dd HH:mm:ss"), ch.spotsList[0].Val1[i].ToString("#.##"), ch.spotsList[0].Val2[i].ToString("#.##"));
}
【问题讨论】:
-
仅供参考,List
和数组之间存在差异。无论如何,对如何将 List 绑定到 datagridview 进行简单的谷歌搜索,这是一个非常简单的任务 btw .. 在 Stackoverflow as well as the rest of the internet上有很多现有示例 - 例如 stackoverflow.com/questions/6473326/… -
对,它们是数组,我使它们成为动态的列表。我已经用谷歌搜索了示例,但它仅适用于单个列表。我似乎找不到将多个 List
绑定到 datagridview(每列一个)的方法。 -
也许您应该显示您尝试将 datagridview 绑定到列表的所有相关代码
-
如何将所有单独的列表复制到一个列表中,然后将该新列表添加到您的 datagridview 中? stackoverflow.com/questions/4488054/…
-
嗯,好主意。我刚试过这个: {List