当前位置:  开发笔记 > 编程语言 > 正文

Silverlight MVVM链接模型和视图模型

如何解决《SilverlightMVVM链接模型和视图模型》经验,为你挑选了1个好方法。

MVVM上有很多很好的例子,但我仍然感到困惑.

假设您有CustomerModel和CustomerViewModel.似乎CustomerModel上有一个Name属性,CustomerViewModel上有一个.CustomerViewModel上的setter将设置CustomerModel Name属性,然后调用OnPropertyChanged(PropName)以便UI更新.这是真的吗?似乎getter/setter将被定义两次.如果你有一个拥有50个属性的模型,那将会变得非常繁琐.

另外,假设我设置了一个Qty属性.ViewModel更新模型.模型根据新的数量更新其Value属性.如何通知ViewModel Model属性发生了变化?



1> wekempf..:

您的ViewModel不必严格封装Model.在您的场景中,CustomerViewModel可能具有Customer属性,这最终意味着您的View绑定到Model属性......它只是通过ViewModel实现.那是完全合法的.也就是说,封装它通常是有益的.您的商业模式可能不包含更改通知.在用户单击"确定"按钮之前,您可能不希望用户交互修改业务模型.您的业​​务模型可能通过异常输入错误,而您希望使用其他形式的验证.我相信你能想到其他的事情.事实上,我猜大多数时候你都想要封装,所以在编写大量无意义的中继方法时,它并不是真的"乏味".

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有