I have some nested view models that implement INotifyPropertyChanged. I’d like to bind an event listener to a nested property path (e.g. "Parent.Child.Name"), much like FrameworkElement dependency properties can be bound to arbitrary nested properties.
However, I just want something like a PropertyChanged event listener — I don’t actually have any UI element I’d like to bind. Is there any way to use the existing framework to set up such an event source? Ideally, I shouldn’t need to modify my view model classes (as this is not required for regular data binding in Silverlight).
You can certainly co-opt the binding/dependency-property infrastructure to listen for changes to a nested property. The code below is WPF but I believe you can do something similar in Silverlight:
So I’ve defined my own
DependencyProperty, not part of any UI per se (just theMainWindowclass), and bound “Child.Name” to it directly. I’m then able to be notified whenChild.Namechanges.Will that work for you?