How to do animated view change

What tips can you give me to implement view change animation for views which resides in the same view?

There are 2 scenarios (for me):
- View change with "module" change. When the 2 different view is in 2 different modules. Like invoking different commands from a menu bar.
- View change within the same module, when the views are sharing the same viewmodel also.

I'd like to follows these principals:
- Each view has a "dedicated state" in VSM declaration like: "Visible", "Hidden".
- Each view should implement an interface to abstract away the VSM stuff like a "ISupportAnimatedViewChange" and has 2 methods: Show, Hide.

In these method implementations when the state change animation is complete the completed event handler should publish a ViewHideComplete or ViewShowComplete event...

If I understand correctly you want to show different views in the same region, and only one at a time. In this
post,
Erwin Van der Valk, developer of the Prism-v2 team, explains how to do this by clicking different buttons (an
approach similar to your command bar).

As for the “dedicated state” you could publish an event in the method that shows each of the views and subscribe to it in all views(sort of a
ChangeActiveView event). Depending on the sender all views should update their state (only active view is the one publishing the event). You can use the
Event Aggregator provided by Prism-v2 for this.