我有List<object[]> MyCollection
,这是SELECT
SQL查询的结果
每个object[]
代表查询结果中的一行,对于不同的查询,数组的长度会有所不同
我在单独的List<string> MyHeaders
中有列标题的名称。
我想将MyCollection
数据绑定到DataGrid
,其中包含MyHeaders
列的标题,并自动生成列。
我想使用AutoGenerateColumns
的原因是因为我希望Datagrid
重新协调每个对象的数据类型,并为每个数据类型使用适当的列模板。
谢谢!
答案 0 :(得分:1)
如果您遇到困难并且需要继续:使用数据集/数据表。古代,但他们仍然工作正常!如果你想知道它是否可以完成,我不知道。绑定到IList的大多数示例我已经看到手动循环和创建列。
关心GJ
答案 1 :(得分:0)
不要使用标题列表,使用字典并使用属性名称作为键,并将描述作为值。做一个正常的blah.DataSource = List和DataBind()。在您的itemdatabound事件中,通过使用以下内容搜索字典来替换您的描述标题:
foreach col in grid.Columns
{
col.Name = dic[col.Name].Value;
}