WPF 数据网格动态绑定

WPF Datagrid Dynamic Binding

我觉得这有点复杂,我会尽力解释。

我有以下表格;

时间表
idTimesheet
id_User
结束日期
已提交
批准

订单项
idLineItem
id_Timesheet
说明


idDay
id_LineItem
日期
小时

因此,如您所见,这是一个时间表系统。 我已经到了可以单独显示每个行项目的地步,问题是弄清楚如何在相关列中显示每天的小时数。

我正在使用 Timesheets.EndDate 在 GridView 中动态生成 Day 列,以便它们也可以在每一列中包含日期,但我不知道如何将 days/hours 绑定到相关列。它们是 DataGridTextColumns,因为最终目标是允许用户在系统中输入他们自己的时间。我正在使用 EntityFramework,因此可以使用 LineItem.Ref_Days 获取天数,它提供了一个 ICollection<Days>,但是在 LINQ 的帮助下可以很容易地将其转换为列表或其他有用的对象.

如有必要,很乐意提供更多信息。

how to display the hours for each day in the relevant column.

不要尝试使用直接实体并绑定到不公开所需内容的属性。创建一个数据传输对象 (DTO) 对象,其中业务逻辑(以及构成逻辑的所有模型)需要表示为从原始属性中提取的属性,或者通过部分 class 定义从 EF 扩展实体.加入智能更新新创建属性的设置器中的实际属性。

无论哪种方式,您只需将列绑定到实际 扩展 实体或 DTO 上的新属性。