C# M-V-VM最佳实践

C# M-V-VM最佳实践,c#,.net,wpf,mvvm,C#,.net,Wpf,Mvvm,我发现了两种在WPF中使用M-V-VM模式的方法: 将ViewModel分配到视图的代码隐藏中(将其设置为DataContext) 将ViewModel分配到XAML文件中,并使用DataTemplate创建相应的视图 可以将模型分配到ViewModel的构造函数中。 您如何看待这种使用M-V-VM模式的方式?与it相关的最佳实践是什么? 谢谢我倾向于遵循#2,并且发现它是最灵活的。作为最佳实践,我会将这些数据模板移动到资源字典,以便在需要它们的XAML之间共享它们。方法3是我们所做的: 这是

我发现了两种在WPF中使用M-V-VM模式的方法:

  • 将ViewModel分配到视图的代码隐藏中(将其设置为DataContext)
  • 将ViewModel分配到XAML文件中,并使用DataTemplate创建相应的视图
  • 可以将模型分配到ViewModel的构造函数中。

    您如何看待这种使用M-V-VM模式的方式?与it相关的最佳实践是什么?
    谢谢

    我倾向于遵循#2,并且发现它是最灵活的。作为最佳实践,我会将这些
    数据模板
    移动到
    资源字典
    ,以便在需要它们的XAML之间共享它们。

    方法3是我们所做的:

    这是关于Boo/Binsor的。。。datacontext是通过IOC设置的

    component "AngleRoomModel", IRoomViewModel, AngleRoomViewModel
    component "AngleRoom", IRoomView, AngleRoomView:  
      DataContext = @AngleRoomModel
    

    干得好!我找到了你说的Cailburn项目: