Где находится корень композиции в приложении WPF MDI? - PullRequest
4 голосов
/ 31 января 2012

В традиционных приложениях MDI некоторые объекты (формы) создаются при выполнении команды (например, нажатие кнопки ленты), поэтому это может быть точка композиции.Я запутался насчет состава root в таких приложениях.Я где-то читал, что мы можем использовать ViewModelLocator , который выглядит как Service Locator pattern.Как вы знаете, некоторые люди отвергают шаблон поиска службы.

Теперь, пожалуйста, сообщите мне об этой проблеме.

Заранее спасибо.

1 Ответ

7 голосов
/ 31 января 2012

Является ли ViewModelLocator сервисным локатором или нет зависит частично от его подписи , а частично от его роли .

В любом случае корнем компоновки приложения WPF является метод OnStartup - независимо от того, является ли приложение приложением MDI, это не меняет.

Поскольку в приложении MDI у вас может быть произвольное количество дочерних окон, вам, скорее всего, понадобится Абстрактная фабрика для создания каждой модели представления.

...