在Catel中的ViewModel构造函数中传递两个项目

时间:2014-04-20 19:32:34

标签: c# wpf mvvm catel

可以将UserControl的ViewModel构造函数设置为使用视图的DataContext和另一个依赖注入来触发吗?

我希望能够将UserControl的datacontext(在其父亲的视频中设置)和数据库服务转换为ViewModel。

无法解决这个问题:

public MyUserControlViewModel( theDataContext, InvoiceService)
{

} 

这有效:

public MyUserControlViewModel( theDataContext)
{

} 

这有效:

 public MyUserControlViewModel( InvoiceService)
 {

 }

1 个答案:

答案 0 :(得分:1)

是的,Catel支持所有这些。如果你有上面的,所有都应该工作。例如:

public MyViewModel(Model model,IService1 service1,IService2 service2) { }

请注意,为了注入模型,必须将其设置为数据上下文。除模型外的所有服务都必须在ServiceLocator中注册。