I'm developing a Prism4 WPF application with 1 region and several views. To date I've been using view injection via IRegion Add/Activate/Remove to control the views (in response to menu selections). Works great.
Now I'd like to mix in some view navigation where the 'IRegion.Add'ed views can navigate to other views and pass parameters. This is where I've run into some trouble...
Part (if not all) of the trouble seems to be that the views added to the region with IRegion.Add don't have an existing navigation journal entry when RequestNavigate is called. The NavigateTo view gets loaded but it can't navigate back (apparently) because
the originating view has no journal entry. Shouldn't RequestNavigate create a journal entry for the NavigateFrom view?
I've found that I work around this issue by having the 'from' view navigate to itself first (if the journal's CurrentEntry is null). That creates a journal entry for the 'from' view and then the navigate 'to' view can go back the original view. But this
has some serious 'code smell' and adds complication the the navigation process.
Is mixing and matching IRegion.Add/Activate with RequestNavigate a supported scenario? Is there a better way to initialize the journal so going back to an 'IRegion.Add'ed view works?