I believe a possible approach, could be to implement the
IActiveware interface in your views / viewmodels.
This interface contains an IsActive property that returns true when the implementer is active, and an
IsActiveChanged event that is raised whenever the active state is changed. This updates will be caused by the
RegionActiveAwareBehavior that will monitor the ActiveViews
collection, and will update the IsActive property of the
IActiveAware views/view models that enter or leave this collection.
Based on this, for example, you could create an extension method like in the following code snippet, that might help you retrieve the deactivated views collection from your region:
public static class
return region.Views.Where(view => !(view as
Also, for more information about implementing IActiveAware you could check the following resources:
I hope you find this helpful,