MVVM属性取决于对象图

Mos*_*man 5 c# data-binding wpf observablecollection mvvm

我正在努力WPF+MVVM.

我有一个VM包含Customer属性的.该Customer具有ObservableCollectionOrders.每一个Order有一个ObservableCollectionItems.每个Items都有一个Price.

现在,我有以下属性VM:

public double TotalPrice
{
    return Customer.Orders.Sum(x => x.Items.Sum(y => y.Price));
}
Run Code Online (Sandbox Code Playgroud)

问题是每当对象图中的任何一点发生变化时 - 应该通知UI TotalPrice已经发生变化 - 但它不会......

例如,如果Customer将从A更改为B,或者将添加订单,或者将删除项目,或者项目的价格将被更改等.

有没有人有这个优雅的解决方案?

谢谢.

Itz*_*ban 1

您可以在这里找到我几天前写的一篇有趣的文章,它准确地讨论了这个问题(及其解决方案......)