Переключение основного вида в WPF - PullRequest
0 голосов
/ 27 апреля 2010

Я знаю, что это может быть глупо, я только начал с WPF.

Я хочу переключиться на другое представление, когда пользователь нажимает на элемент управления, например, отображает страницу сведений после щелчка по списку. Этот вид заменит оригинал.

В веб-приложении это будет переход на другую страницу. Какая местная идиома для этого?

Ответы [ 2 ]

1 голос
/ 27 апреля 2010

Я считаю, что вы хотите открыть другое диалоговое окно.

Я организую свои элементы управления WPF следующим образом: MVC pattern:

просмотров <==> контроллера <==> данных

Итак, когда вы щелкаете мышью по представлению, контроллер обрабатывает логику щелчка, что-то вроде того, как веб-сервер обрабатывает логику пользовательского ввода. Затем контроллер определяет, открывать ли другое представление или нет. Если пользовательский ввод требует некоторого хранения или обработки состояния, то контроллер передает это в раздел «данные». Затем этот класс данных будет записывать данные на диск, если это необходимо. Контроллер также может передаваться в класс «обработки», который будет обрабатывать ввод и возвращать его контроллеру, который затем определяет, отображать ли результаты пользователю, помещать их в файл, оба или ни одного. 1009 *

tl; выведите свою логику управления в бэкэнд-класс, а не в само окно. Затем этот бэкэнд откроет другое окно.

0 голосов
/ 29 апреля 2010

На сегодняшний день я структурировал свое приложение так, чтобы все представления в пути (например, мастер или аналогичный многоступенчатый ввод) находились в TabControl.

Я могу легко скрывать вкладки (видимость = свернутые) и выводить данную вкладку вперед.

Я собираюсь обработать навигацию в коде позади, обрабатывая события Click и MouseDown.

Бизнес-логика будет обрабатываться командами, прикрепленными к элементам пользовательского интерфейса. Кажется, команды выполняются сразу после кода. Это позволяет проводить модульное тестирование бизнес-логики без вмешательства в пользовательский интерфейс.

Таким образом, у меня должны быть все преимущества MVVM с минимальными хлопотами. Конечно, лучшая архитектура приветствуется. Библиотека выбора, в настоящее время является основой MVVM.

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