Я пытаюсь реализовать простое приложение для анализа данных WPF, используя шаблон проектирования MVVM, в котором можно использовать несколько различных методов для анализа некоторых данных (загружаемых из файлов).
На первом экране пользователь должен иметь возможность выбрать метод, который ему нравится использовать. После того, как он это сделал и загрузил данные, область, ранее занятая экраном выбора метода, должна быть заменена результатами анализа.
В настоящее время мой MainWindowViewModel имеет свойство «CurrentViewModel» объекта типа, которое может быть установлено либо в качестве модели выбора метода, либо в одну из моделей представления результатов анализа, которые затем отображаются с использованием шаблонов данных.
Проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, как должны взаимодействовать разные модели представления.
- Экран выбора метода требует
список доступных методов.
- Главный экран должен знать, какой метод был
выбрал и выберите оценку
viewmodel для отображения результатов.
- Загруженные данные каким-то образом должны попасть в класс, выполняющий реальную работу, и модель представления результатов должна знать об этом, чтобы знать, откуда взять свои данные.
Все, что я могу придумать, оставляет MainWindowViewModel для выполнения всех согласований между различными классами модели и модели представления.
Как бы я оптимально спроектировал это?