Обычно у меня есть ShellViewModel
, который содержит свойство CurrentPage
, которое содержит ViewModel текущей страницы.В XAML я привяжу ContentControl.Content
к CurrentPage
, а затем, чтобы переключить представление, я просто переключаю свойство CurrentPage на то, что ViewModel должно быть текущим.
<ContentControl Content="{Binding CurrentPage}" />
Команда изменения страницы:
void ChangePage(ViewModelBase page)
{
CurrentPage = page;
}
Например, см. этот пост моего