I would use an IService that is implemented by each view model. Then, in view models, you can pass service properties to view model properties that implement INotifypropertychanged. For example, I have a service called INavigationService, which is implemented by my view models, and it has properties like CanNavigate, currentView, etc., which I bind in my view models. Changes to these properties can cause navigation or change properties that other view models are bound to.
J king
source share