【发布时间】:2010-10-24 18:11:50
【问题描述】:
我很困惑。也许你可以帮助我:)
我一直遵循 CAG 的指导,发现 MVP 模式对我来说非常自然。 假设我有一个 UI 就绪模型(例如:实现 INotifyPropertyChanged),我使用演示者将此模型绑定到视图(演示者知道视图的接口),使我的代码隐藏尽可能小,仅处理绑定(模型和命令)属性(或方法)或没有 ICommand 的控件的事件,在这种情况下立即委托给演示者。
-
一段时间后,我发现了 MVVM 模式,但到目前为止我还没有发现它。 据我所知,我只会在我的模型未准备好 UI 时使用 MVVM。但是保留演示者并只使用新模型是否更合理,我不明白这种用法会失去什么。 我知道我错过了什么,但它是什么:)。
-
当您的视图是通用的并且可以处理多种模型(例如在 PropertyGrid 中)时。建议 ViewModel 与 DataTemplate 一起使用,但在这种情况下,您无法为模型中的每个实体创建模板,只需要在运行时进行调查,您会推荐什么?
-
在看 Josh Smith 在screencast 中谈论 MVVM 时,我有一种感觉,在 ViewModel 中重新暴露 Model 违反了 DRY(不要重复自己),真的无法避免吗?与火焰相比,没有人对此争论不休,这让我感到惊讶ADO.Net Dynamic Data metadata classes are getting nowadays。
希望它足够清楚
谢谢
爱丽儿
【问题讨论】:
标签: wpf design-patterns mvvm mvp prism