Your best bet is to use an MVVM environment such as Caliburn.Micro , which makes browsing a song very easy. In this case, for example, you will have a shell screen that will be a conductor, and each of your sub-screens will simply be different view models to which your shell will have links, and each of them will become an active element when they are needed for display.
source share