Свойство MVVM зависит от графа объектов

Я работаю с WPF + MVVM .

У меня есть виртуальная машина , которая содержит свойство Customer . У клиента есть ObservableCollection из заказов . Каждый заказ имеет ObservableCollection из элементов . Каждый пунктов имеет цену .

Теперь у меня есть следующее свойство на моей виртуальной машине :

public double TotalPrice
{
    return Customer.Orders.Sum(x => x.Items.Sum(y => y.Price));
}

Проблема заключается в том, что всякий раз, когда в любой точке этого графа объектов происходит изменение, пользовательский интерфейс должен получать уведомление о том, что TotalPrice изменилось - но это не так ...

Например, если Клиент будет изменен с A на B, или будет добавлен заказ, или элемент будет удален, или цена товара будет изменена и т. д.

Есть ли у кого-нибудь изящное решение для этого?

Спасибо.

5
задан Dave Clemmer 7 December 2011 в 06:04
поделиться