0

问题:

我有一个具有日期、名称和值属性的对象列表。Name 和 Date 属性可以不同或相同。

orange  2012-01-01  1
orange  2013-01-01  0

我想创建一个带有标题(不同的日期)和行的 GridView

  Name   2012-01-01   2013-01-01
orange       1            0

如您所见,对象没有像“2012-01-01”这样的属性,所以简单的绑定无济于事。

问题

如何使用列名创建绑定?

这我想用 XAML 或转换器来做,而不使用 UserControl 的事件

4

2 回答 2

1

本质上,您需要做的(如您所见)是创建具有动态属性(即在运行时填充的属性)的对象列表。转换本身是 Date 的轴心,具有跨值的总和 (?),您可以在转换器中使用 GroupBy Linq 查询执行该转换。

现在是棘手的部分。看看这个答案:

数据绑定动态数据

您需要实现 ICustomTypeDescriptor 来实现动态属性。祝你好运。

于 2012-04-24T10:01:29.263 回答
0

获取您的对象列表 -根据您的条件创建一个新的对象列表。然后只需将新列表作为 itemssource 放入 datagrid/itemscontrol。

于 2012-04-24T09:40:30.927 回答