赞
踩
一、Data Binding
Data Binding在MVVM模式中起到了重要的作用,WPF提供了强大的数据绑定功能,因此在设计view和model时应该充分利用这些能力,这意味着你必须实现正确的接口。
1)WPF支持one-way binding和two-way binding,two-way binding会将用户对界面数据的修改自动更新到底层数据对象。
2)为了将view model或者model中的数据更新通知到view,需要实现INotifyPropertyChanged接口或者INotifyCollectionChanged接口(如果model是一个集合)。
3)此外,ICollectionView接口在view和view model/model底层集合对象之间提供了排序、过滤、分组以及选择元素的跟踪操作。WPF的ListCollectionView实现了ICollectionView接口。
二、Commands
在WPF中,用户通过UI进行的操作被定义为Commands。Commands为操作和UI上的控件进行绑定提供了一种便利的方式。
WPF的一些控件提供了Command属性,这个属性可以绑定到viewModel中实现了ICommand接口的对象,例如:
- public class QuestionnaireViewModel
- {
- public QuestionnaireViewModel()
- {
- this.SubmitCommand = new DelegateCommand<object>(
- this.OnSubmit, this.CanSubmit );
- }
- public ICommand SubmitCommand { get; private set; }
- private void OnS
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。