将列表<object>的数组绑定到二维datagridview

时间:2016-05-18 16:11:13

标签: c# list datagridview binding datareader

我试图将Master_Transaction_List绑定到datagridview,这是一个列表数组。目前,当list []在运行时绑定到datagridview时,只显示一列(并且它似乎是每行的列数,而不是实际数据)。

dh.Fill_Master_Transaction_List("SELECT * FROM transactions_dumpfile WHERE Tran_Price=8000;");
dataGridView1.DataSource = dh.Master_Transaction_List;

类dh根据此查询使用MySQL表中的相关数据填充名为Master_Transaction List的公共列表[]。我可以看到查询运行正常,我的list []数组是我正在处理的正确的二维数据集; 16列,~1k行。

但是,当我为datagrid设置数据源时,只显示一列;不显示数组中每个成员的列表项中的数据,而是显示数组中每个成员(即每个列表)的列数。

问题可能是我正在使用&#39;对象&#39;每个数组成员中所有对象的数据类型? datagridview对此敏感吗?我是否需要提前为其提供列的架构?

编辑:要清楚,这是dh中的Master_Transaction_List的定义:

public List<object>[] Master_Transaction_List;

1 个答案:

答案 0 :(得分:1)

来自MSDN

  

DataGridView类支持标准Windows窗体   数据绑定模型。这意味着数据源可以是任何类型的数据源   实现以下接口之一:

     

IList界面,   包括一维数组

     

IListSource接口,例如   DataTable和DataSet类。

     

IBindingList接口,例如   BindingList类。

     

IBindingListView接口,如   BindingSource类。

尝试将外部数组转换为列表,将内部列表转换为数组。根据数组列表是好的