WPF将两个集合合并到一个DataGrid中
我有两个集合,我想在一张表中一起显示。 我打算为此使用水平的DataGrid,我试图找出将集合公开到DataGrid的最佳方法。 (这里描述了一个水平DataGrid解决方案:WPF水平DataGrid)
有一些荒谬的例子,有椅子和桌子。 在我的应用程序中,我有一张表格和一张椅子列表(桌子和椅子都有一个Date和NumberOfItems属性):
public List<Table> TableList { get; set; }
public List<Table> ChairList { get; set; }
在xaml中,我想将DataBind组合到一个组合列表中,以便得到如下所示的内容:
Date | 01-Jan-2011 | 02-Jan-2011 | 03-Jan-2011 | 04-Jan-2011
Number of tables | 5 | 6 | | 7
Number of chairs | 3 | | 2 |
TableList和ChairList没有相同数量的项目。 公开可绑定组合集合的最佳方法是什么?
尝试CompositeCollection
类。 这里有一个很好的例子,包括如何在复合列表中显示多个项目类型的模板。 这里的好处在于,您可以在代码中创建集合并将其展示为绑定,或者从两个分开绑定的集合中将其构建到Xaml中。
我结束了将DataGrid绑定到DataTable的DataView。 我创建了一个FurniturePerDate对象,其中每个日期都具有可为空的Table和Chair属性,并使用一系列FurniturePerDate来创建DataTable。 非常不灵活,但它适用于我的用例。
链接地址: http://www.djcxy.com/p/64725.html上一篇: WPF combine two collections in one DataGrid
下一篇: Resizing font in WPF list or grid to use space properly