目前各种MVVM框架眼花缭乱,通过vm绑定让UI控制更简单便捷。.net下可通过System.ComponentModel中的INotifyPRopertyChanged接口实现模型成员的状态监控,配合属性绑定让代码更简洁可观。
1、将需绑定的属性抽象成类,这边按钮标题为例。模型继承自INotifyPropertyChanged并实现其事件成员PropertyChanged。PropertyChanged将在公共属性的set访问器中使用。
public class DemoViewModel : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; string _btnTitle; public DemoViewModel() { } public string BtnTitle { get { return _btnTitle; } set { if (_btnTitle != value) { _btnTitle = value; if(PropertyChanged != null) { //将属性名称这边为BtnTitle传入事件 PropertyChanged(this, new PropertyChangedEventArgs("BtnTitle")); } } } } }2、在调用类中实例化并初始化Model类一次,当实例中对应的属性发生变动时,绑定的属性或者说调用方将自动获取变动通知。
新闻热点
疑难解答