Some comments:
- You can use the weak event pattern to ensure that the view can be GC’d even if it is still attached to the view model’s event
- If you’re already switching multiple VMs in for the one view, wouldn’t that be the ideal place to attach/detach the handler?
- Depending on your exact scenario, you could just have the VM expose a state property which the view uses as a trigger for animations, transitions, and other visual changes. Visual state manager is great for this kind of thing.