Как добавить представления для управления элементами в Prism с помощью MEF и WPF
У меня есть приложение, которое пока имеет только 2 просмотра. Представление 1 представляет собой список, а второе - подробное представление (как только вы выбрали элемент в представлении 1.
Я установил регион в своей оболочке Prism и могу загрузить свои модули. Я хочу, чтобы только модуль 1 загружался изначально. Когда я выбрал элемент из 1, я хочу перейти к 2 (который затем появится в моем элементе управления (который, кстати, является элементом управления вкладками).
Проблема у меня заключается в том, что я либо получаю а) оба представления изначально отображаются в моей вкладке управления.
б) Если я изменю атрибут экспорта в модуле представления b для инициализации по требованию, то при нажатии кнопки навигации для просмотра b ничего не произойдет.
Любая помощь приветствуется. Благодарю.
1 ответ
Я справился с этим, позволив открыть все виды, но при инициализации вида я деактивирую все взгляды, принимаю тот, который мне интересен. Конечно, я ищу лучший способ:)
foreach (var view in RegionManager.Regions["RegionFoo"].Views)
{
if (view.GetType() == initialViewType)
{
RegionManager.Regions["RegionFoo"].Activate(view);
}
else
{
RegionManager.Regions["RegionFoo"].Deactivate(view);
}
}
Я делаю это после того, как в этом регионе были зарегистрированы представления о недоброжелательности. initialViewType - это тип представления, которое вы хотите найти. Это предполагает только один вид.