Implicit"Back" & "Forward" functionality in micro

Sep 5, 2010 at 12:36 AM

I was analyzing the caliburn 1.1 LOB example and realized that the "CanGoBack/Forward" and "Back/Forward" functionality is implemented by the framework (Navigator.cs).

Is this functionality still implemented by the micro framework (I could not find it) or is it upon to user to implement it?

I wrote a simple "Back" & "Forward" functionality in the ShellViewModel but I am wondering if this effort is redundant or is the advice to pull in the Navigator.cs if that is required?

Sep 5, 2010 at 1:07 AM
Edited Sep 5, 2010 at 1:07 AM

The Navigator has been removed from Caliburn 2.0 and does not exist in Caliburn.Micro. I determines that it was extremely difficult to come up with a generalizable navigation conductor that wasn't overly complicated or had issues with lifetime management. So, I decided not to implement one in the framework. It's actually very easy to build one yourself for your specific scenario. I built a really basic one for the IResult/Coroutine docs sample. Have a look at that. You can just inherit from Condcutor<T> and add a few lines of code probably to get what you want.

Sep 7, 2010 at 8:40 PM


I looked at the ShowScreen implementation. I have a question.

How does one set relevant properties on the viewmodel if one used the ShowScreen approach?

e.g if a user clicks on the listviewItem "England" from the listview of countries, you would want to set the country to show on the countryviewmodel to be displayed next.

Would it be correct to say that, one could you ShowScreen when no context has to be set (when dependencies can be fulfilled at registration time) the screen to be shown but not otherwise?

Please correct me if I have not understood this correctly.

Many Thanks