К сожалению, ответ на этот вопрос может быть не таким простым, как вам хотелось бы. Я думаю, что у всех есть немного разные способы сделать это, так что это только один из способов.
Во-первых, мы используем библиотеку Prism / CAL от Microsoft, которая имеет понятие «регионы», которые называются элементами управления заполнителями (то есть ItemsControl, в некотором роде). Затем на всех наших «страницах» мы берем экземпляр контроллера, который мы называем NavigationController, в обязанности которого входит замена представлений. NavigationController полон таких методов, как «GoToHome», которые выполняют такие вещи, как: извлечение Home ViewModel из внедрения зависимостей (или создание нового экземпляра, в зависимости от настроек), очистка определенного региона путем получения его из диспетчера регионов, а затем загрузка это с новой моделью Home view. Затем мы подключаем вызов в нашей модели представления «страницы» для вызова контроллера.
Итак, в общем, требуется немного сантехники. После того, как вы получили начальную настройку, добавление новой страницы занимает всего несколько минут, но волшебной «ссылки» нет, потому что вы должны знать, куда вы идете, куда она загружается и как получить поддержку. ViewModel.