Как перемещаться по нескольким страницам в одном окне (через фрейм) WPF - PullRequest
0 голосов
/ 07 августа 2020

У меня есть проект, в котором у меня есть требование отображать несколько страниц в одном окне, теперь мой вопрос: у меня есть компонент внутри фрейма (страницы), и в любом случае я хочу, чтобы пользователь перешел к другому страница (в каком-то сценарии я хочу изменить одну страницу или несколько), пожалуйста, предложите мне лучший способ.

Это моя структура папок Структура папок

Это мое главное окно Главное окно

Это моя модель просмотра Модель просмотра

Свойство изменяется из команды, но я не вижу никаких изменений в пользовательском интерфейсе Свойство отражено

Вот мой исходный код

1 Ответ

0 голосов
/ 07 августа 2020

Вы можете создать ViewModel для каждой страницы, которую хотите отобразить, и сделать их унаследованными от одного и того же класса

public class Page1 : PageViewModel
public class Page2 : PageViewModel

В MainViewModel вы можете создать список страниц, которые хотите отобразить, и текущая отображаемая страница

public PageViewModel CurrentPage
public List<PageViewModel> AllPages

И теперь, если у вашего MainWindow есть доступ к этим полям, вы можете привязать страницу и отобразить ее

<ContentPresenter Content="{Binding CurrentPage}"/>

Я не уверен, что вы можете поставить Frame в ContentPresenter, вы можете попробовать изменить Frame на UserControl.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...