Открытие диалога, когда все регионы загружены в оболочку - PullRequest
0 голосов
/ 07 февраля 2020

У меня есть приложение WPF, использующее платформу Prism. Он имеет три региона, которые загружаются в оболочку. Теперь у меня есть требование, которое должно отображать диалоговое окно после загрузки главного окна (все регионы). т.е. диалог должен отображаться в верхней части главного окна. Я попытался опубликовать sh событие во время инициализации оболочки, однако диалоговое окно отображается только при закрытии главного окна или, если publi sh событие в одном из конструкторов usercontrol региона, сначала отображается диалоговое окно, а когда диалоговое окно закрывается, загружается главное окно , Теперь я думаю, что если я смогу найти способ загрузить все регионы через событие, то я могу опубликовать sh событие там. Вопросы: 1. Есть ли какое-либо событие, которое я могу использовать, чтобы определить, загружены ли все регионы? 2. Есть ли другой подход, на который вы можете указать мне, чтобы выполнить это требование?

Ответы [ 2 ]

0 голосов
/ 07 февраля 2020

Есть ли какое-либо событие, которое я могу использовать, чтобы определить, загружены ли все регионы?

Переопределите PrismApplicationBase.OnInitialized и наберите IDialogService оттуда.

0 голосов
/ 07 февраля 2020

Поместите это в конструктор родительского элемента управления

Dispatcher.BeginInvoke(DispatcherPriority.Loaded, new Action(() => {code that should be executed after all children are loaded} ));
...