Я использую MVVM в своем проекте, и вот мой вопрос. У меня есть View и соответствующая view-модель со ссылкой на сервис. Это представление содержит UserControl, который имеет другой UserControl, а также содержит вложенный UserControl. Последний UserControl имеет метод, который создает всплывающее окно. И в этом всплывающем окне мне нужна ссылка на сервис из модели представления. Каждый пользовательский элемент управления имеет собственный DataContext.
Кодовое объяснение.
Просмотр xaml:
<UserControl DataContext="{Binding ViewModel}">
<FunctionsList/>
</UserControl>
Список функций xaml:
<UserControl>
<Function1/>
<Function2/>
<Function3/>
<Function4/>
</UserControl>
Function3 xaml:
<UserControl/>
Код Function3 содержит метод CreatePopup, который создает диалог с UserControl
Function3Popup в качестве содержимого. И Function3Popup должен иметь ссылку Service.
Какая лучшая практика здесь? У меня ужасное решение передать ссылку с помощью привязки, но мне это кажется обескураживающим.