我在WPF中有一个Datagrid,我绑定到我的ObservableCollection列表,然后我为我想要的属性创建了列,如下所示:
public int Name { get; set; }
public DateTime Date { get; set; }
public long Cod { get; set; }
public long ProductRef{ get; set; }
public List<SubProduct> ListSpecs {get; set;}
问题是,该集合有一个子产品列表,我需要为该列表的至少第一个项目创建一个新列。 Datagrid如下所示:
|Name|Date|Cod|ProductRef|ListSpecs[0]|ListSpecs[1]|
如何实现?我不想添加更多属性来绑定该列表的项目。
答案 0 :(得分:3)
以下内容应该有效。例如,您的第一个子集合项目。 或者您可以尝试将整个子集合绑定到组合框?
<DataGrid.Columns>
<DataGridTextColumn Header="item" Binding="{Binding Name}" />
<DataGridTextColumn Header="subitems" Binding="{Binding ListSpecs[0]}" /> // first item of subcollection
<DataGridTextColumn Header="subitems" Binding="{Binding ListSpecs[1]}" /> // second item of sub collection
</DataGrid.Columns>
</DataGrid>