我有一个Employees集合,每个项目都有自己的ProjectResource项目集合。 我正在尝试对列进行数据绑定,但ProjectResource不会绑定。
<data:DataGrid x:Name="TestGrid">
<data:DataGrid.Columns>
<data:DataGridTextColumn Header="First Name"
Binding="{Binding Person.FirstName}" />
<data:DataGridTextColumn Header="Last Name"
Binding="{Binding Person.LastName}" />
<data:DataGridTextColumn Header="Week 1"
Binding="{Binding ProjectResource[0].PercentRequired}" />
</data:DataGrid.Columns>
<data:DataGridTextColumn Header="Week 2"
Binding="{Binding ProjectResource[1].PercentRequired}" />
</data:DataGrid.Columns>
</data:DataGrid>
从上面你可以看到我们从Employee.Person获取Name详细信息,我们将子集合作为Employee.ProjectResource。 这就是我所拥有的。无论如何,这对我来说是有意义的,它应该有效,但事实并非如此。它显示名字和姓氏,但没有项目资源数据。 也许这只是一个语法错误或简单(我希望),但任何帮助将不胜感激。
感谢您阅读
答案 0 :(得分:0)
我有一个解决方案,虽然它有点像黑客。
我在silverlight应用程序中创建了一个newEmployee和Resource类。我创建了一个Collection并将Employee实体项添加到新集合中,并将此新集合指定为网格的项源。在对xaml进行了一些轻微的语法修改之后,它现在可以完全正常运行并且可以双向数据绑定到新集合。
我必须在启动submitchanges方法之前将任何更改导出回实体集合。