2012-11-08 2 views
0

Мне нужно отображать представления в модуле. Модуль регистрирует его вид, используя метод Initialize. Пользователь выберет имя модуля из выпадающего списка. Первый раз он работает с использованием I ModuleManager.LoadModule (string ModuleName). Если я хочу снова отобразить тот же модуль (в том же регионе после очистки ранее отображаемого модуля) IModuleManager.LoadModule не будет работать. Я не знаю взглядов и регионов, содержащихся в этом модуле. Я знаю только ModuleName, и мне нужно отобразить его. Как я могу это сделать?Модуль перезагрузки WPF Prism с использованием модуля IModuleManager.LoadModule

ответ

0

Ваши вопросы очень сбивают с толку. Можете ли вы предоставить дополнительную информацию? IRegionManager - это компонент для регистрации видов в ваши предопределенные регионы. ModuleManager несет ответственность только за загрузку сборки, если я получил это право.

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

Я не знаю, используете ли вы Unity или MEF (или другой МОК), но вы можете получить IRegionManager в своем модуле через Контейнер.

Возможно, вам стоит посмотреть этот учебник серии Prism Tutorial Series. Мне кажется, что вам не хватает некоторых основных принципов.

Смежные вопросы