Я рассмотрел часть официального примера InteractivityQuickstart.Prism5 PopupWindowАкции и инъекции
<prism:InteractionRequestTrigger SourceObject="{Binding ItemSelectionRequest, Mode=OneWay}">
<prism:PopupWindowAction>
<prism:PopupWindowAction.WindowContent>
<views:ItemSelectionView />
</prism:PopupWindowAction.WindowContent>
</prism:PopupWindowAction>
</prism:InteractionRequestTrigger>
Так, ItemSelectionRequest называют менее параметром конструктора
public ItemSelectionView()
{
this.DataContext = new ItemSelectionViewModel();
InitializeComponent();
}
в коде-позади ItemSelectionView.
Вопросы: 1) Как можно установить DataContext без "новый", потому что
public ItemSelectionView(ItemSelectionViewModel model)
или
[Dependency]
public ItemSelectionViewModel ViewModel
{
set { this.DataContext = value; }
}
Безразлично `работы. мне нужно, чтобы получить некоторые услуги в ViewModel => мне нужно позвонить что-то вроде этого
public ItemSelectionViewModel(IEventAggregator eventAggregator)
{
_eventAggregator=eventAggregator;
}
Удивительный! Но у меня возникла небольшая проблема: это всплывающее окно должно появиться после момента загрузки оболочки, что-то вроде формы входа, поэтому поднимите его на событие «Loaded» на shell (= после CreateShell() в BootStrapper). С услугами призмы все в порядке, но проблема связана с общими службами, потому что модули загружаются после CreateShell(), и я получаю исключение. Какая хорошая платица, как повысить всплывающее окно после загрузки оболочки? – galakt
Пожалуйста, отметьте это как ответ для этой конкретной проблемы, а затем задайте другой вопрос как отдельный пост. Благодарю. –