我认为我对MVVM设计模型有很好的理解,但是我对WPF,Command绑定以及我们如何使用它们有兴趣。MVVM - 与WPF命令绑定标准相关
要直接将命令绑定到XAML,我们打算在ViewModel中实现ICommand接口。现在,ICommand接口是PresentationCore.DLL的一部分,如果im错误是WPF而不是基本.NET框架的一部分,那么请纠正我。
是不是ViewModel和Model的整个点,它应该完全UI独立?例如,如果我在ViewModel中实现ICommand并将其用作数据上下文以绑定来自XAML的命令,则我的ViewModel不依赖于WPF框架工作(特别是PresentationCore.Dll)。
我的意思是,如果我要去尝试使用我的模型和ViewModels可以说Windows窗体环境,我将不得不引用PresentationCore.DLL,即使我不应该需要它,因为即时通讯使用Windows窗体而不是WPF框架。
这对我来说似乎有点奇怪,我在这里错过了什么吗?有没有另外一种方法可以让我的Model和ViewModel完全独立于UI和UI框架,但是仍然能够在XAML中使用Command绑定?
在此先感谢!
在这一点上我有我自己唯一的解决办法是创建两个视图模型,有一个XXXViewModel和XXXViewModelWPF继承自XXXViewModel并包含所有与ICommand相关的东西,那么XXXViewModelWPF类只会成为WPF。有没有更好的办法?谢谢 – 2012-07-14 06:20:47