PRISM UserControl和ServiceReference

时间:2010-10-12 10:44:08

标签: silverlight data-binding prism

我在我的项目中使用MVVM,这是我的问题。我有一个View和相应的视图模型,带有服务引用。此视图包含UserControl,它具有另一个UserControl,它还包含嵌套的UserControl。 Last UserControl有一个创建弹出窗口的方法。在这个弹出窗口中,我需要来自视图模型的服务引用。每个用户控件都有自己的DataContext。

代码说明。

查看xaml:

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

FunctionsList xaml:

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

Function3 xaml:

<UserControl/>

后面的Function3代码包含CreatePopup方法,该方法使用UserControl Function3Popup作为内容创建对话框。而Function3Popup应该有服务参考。

这里的最佳做法是什么?我有一个糟糕的解决方案,使用绑定传递引用,但它似乎让我感到沮丧。

1 个答案:

答案 0 :(得分:0)

好吧,毕竟我已经使用自己的ViewModel实现了弹出窗口,并使用嵌套子控件中的命令绑定从父控件中解析了它。我认为这是最好的解决方案。