2010-10-12 8 views
0

Я использую MVVM в своем проекте, и вот мой вопрос. У меня есть View и соответствующая модель представления с ссылкой на службу. Это представление содержит UserControl, у которого есть другой UserControl, и он также содержит вложенный UserControl. В последнем UserControl есть метод, который создает всплывающее окно. И в этом всплывающем окне мне нужна служебная ссылка из модели представления. Каждый пользовательский элемент управления имеет собственный DataContext.PRISM UserControl и ServiceReference

Обозначение кода.

Просмотр XAML:

<UserControl DataContext="{Binding ViewModel}"> 
    <FunctionsList/> 
</UserControl> 

FunctionsList XAML:

<UserControl> 
    <Function1/> 
    <Function2/> 
    <Function3/> 
    <Function4/> 
</UserControl> 

FUNCTION3 XAML:

<UserControl/> 

FUNCTION3 код позади содержит метод CreatePopup, который создает диалог с UserControl Function3Popup как Содержание. И Function3Popup должен иметь ссылку на службу.

Какова наилучшая практика здесь? У меня есть ужасное решение передать ссылку с помощью привязки, но мне кажется обескураживающим.

ответ

0

Ну, в конце концов, я реализовал всплывающее окно с собственным ViewModel и разрешил его из родительского элемента управления, используя привязку команд во вложенном дочернем элементе управления. Я думаю, что это лучшее решение здесь.

Смежные вопросы