DeeStackOverflow
DeeStackOverflow

Reputation: 2781

Main page xaml to manage user control events

I need an elegant solution (I am working on silverlight 4.0) to solve this simple problem(?) using the MVVM pattern:

My mainpage xaml has my two custom user controls like this (say):

<uc:MyCustomUC1>
<uc:MyCustomUC2>

Each one has its own view model and both these user controls are independent of each other.

When an asynchronous operation in MyCustomUC1 has completed, I want an ICommand in MyCustomUC2's viewmodel to be invoked thus refreshing data in MyCustomUC2. I want this done by the parent page and all in xaml. Exposing dependency properties, event handlers etc in the user controls...anything is ok since I own the user control ...whatever makes sense.

Any ideas ?

Upvotes: 0

Views: 657

Answers (2)

MacNET
MacNET

Reputation: 133

You could use a PropertyObserver, which I believe you can find info on here: Property Observer.

It'll allow you to check when something has changed in one ViewModel and then take the appropriate action in another. I've used this quite a bit recently in a project and it has worked pretty well.

Apologies if I've picked up the question incorrectly.

Upvotes: 0

Derek Beattie
Derek Beattie

Reputation: 9478

Use Mvvm Lights messenger, you can register a listener in MyCustomUC2's viewmodel to refresh. Then in MyCustomUC1's async call back, send the message to refresh.

Upvotes: 1

Related Questions