WPF 之 数据绑定
时间:2014-06-03 14:39:27
收藏:0
阅读:478
数据绑定需要:
- 后台必须要有与控件对应的类和相关的属性
- 在后台new 一个类的对象
- 在后台把控件的数据上下文设置为该对象。
- 在XAML中把要绑定的控件中Text = "{Binding 属性 }"
现象:在界面中修改控件中的参数可以同时反映到后台的实例中去,但是直接修改后台的实例,对界面中的参数没有影响
原因:由于普通对象没有“通知我的属性变了”这么一种机制,所以改变对象的属性,界面不会变,但是界面改变是有TextChanged之类的事件的,所以改变界面可以同步修改到对象
解决方法:为类添加INotifyPropertyChanged接口,数据绑定会检测DataContext是否实现了INotifyPropertyChanged,如果实现了,就会监听PropertyChanged得知属性变化

1 class Person:INotifyPropertyChanged 2 { 3 private int age; 4 5 public int Age 6 { 7 get 8 { 9 return age; 10 } 11 set 12 { 13 this.age = value; 14 if (PropertyChanged != null) 15 { 16 PropertyChanged(this, 17 new PropertyChangedEventArgs("Age")); 18 } 19 } 20 }
评论(0)