2016-02-16 2 views
0

При запуске моего приложения я тестирую некоторые подключения к другим системам. Я запускаю события, чтобы получить информацию о состоянии этих соединений.Catel: Fire Events после InitializeAsync в ViewModel

Я использую Catel TabControl, чтобы показать свои взгляды. Я установил LoadTabItems в "EagerLoading" и подписался на события в методе InitializeAsync в моих моделях ViewModels.

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

ответ

0

Я рекомендую вам создать службу или менеджер по имени ConnectionManager. Это проверит события (так как это длинный живой объект, возможно, зарегистрированный в контейнере IoC). Тогда в вашем vm, не имеет значения, если события уже запущены или нет, ConnectionManager даст вам ответ.

Помните, что модели просмотра - это короткие живые объекты (они ушли, как только ваши взгляды исчезли). Если вы хотите сохранить состояние, используйте менеджеров/служб.