WPF INotifyPropertyChanged
2013-05-18 11:41
405 查看
首先感叹一下,INotifyPropertyChanged这个单词有点长,我现在都还记不住……
其次再感叹一下,实现这个接口,属性的封装还是有点麻烦啊。
属性什么的我就喜欢 xxx{get;set;}……不得不说我是一个很懒的猿~
首先来看看一般的实现方式:
View Code
于是就可以这样:this.RaisePropertyChanged(vm=>vm.UserName); 是不是觉得爽多了?麻麻再也不用担心哦拼错属性名称了~
最后,好记性不如烂笔头~~INotifyPropertyChanged、INotifyPropertyChanged、INotifyPropertyChanged、INotifyPropertyChanged、INotifyPropertyChanged……
其次再感叹一下,实现这个接口,属性的封装还是有点麻烦啊。
属性什么的我就喜欢 xxx{get;set;}……不得不说我是一个很懒的猿~
首先来看看一般的实现方式:
public static class NotificationObjectEx { /// <summary> /// 使用:RaisePropertyChanged(vm=>vm.属性) /// </summary> /// <typeparam name="T"></typeparam> /// <typeparam name="TProperty"></typeparam> /// <param name="propertyChangedBase"></param> /// <param name="expression"></param> public static void RaisePropertyChanged<T, TProperty>(this T propertyChangedBase, Expression<Func<T, TProperty>> expression) where T : NotificationObject { var memberExpression = expression.Body as MemberExpression; if (memberExpression != null) { string propertyName = memberExpression.Member.Name; propertyChangedBase.RaisePropertyChanged(propertyName); } else throw new NotImplementedException(); } }
View Code
于是就可以这样:this.RaisePropertyChanged(vm=>vm.UserName); 是不是觉得爽多了?麻麻再也不用担心哦拼错属性名称了~
最后,好记性不如烂笔头~~INotifyPropertyChanged、INotifyPropertyChanged、INotifyPropertyChanged、INotifyPropertyChanged、INotifyPropertyChanged……
相关文章推荐
- WPF 自定义NotifyPropertyChanged
- WPF新手之自制Snippet —— INotifyPropertyChanged
- WPF Binding INotifyPropertyChanged 多线程 深入理解
- WPF:向客户端发出某一属性值已更改的通知INotifyPropertyChanged接口
- WPF 绑定集合 根据集合个数改变样式 INotifyCollectionChanged
- [WPF/Silverlight]让INotifyPropertyChanged的实现更优雅一些
- INotifyPropertyChanged 接口
- Android官方DataBinding(二):动态数据更新notifyPropertyChanged
- Android官方DataBinding(二):动态数据更新notifyPropertyChanged
- WPF进阶之接口:INotifyPropertyChanged,ICommand
- 【转载】wpf数据绑定binding与INotifyPropertyChanged
- ObservableObject or INotifyPropertyChanged on ViewModels
- Binding to a dictionary in Silverlight with INotifyPropertyChanged
- wpf RadioButton控件的一个bug,onpropertychanged后会修改旧属性的值
- 在WPF中实现INotifyPropertyChanged接口的辅助snippets
- C#数据绑定之INotifyPropertyChanged
- WPF PropertyChanged 事件 与loaded事件的关系
- WPF,textBox默认是失去焦点绑定值才改变,怎么做到输入框值一改变就改变绑定值. Text="{Binding EvaluationContent,UpdateSourceTrigger=PropertyChanged}"
- C# INotifyPropertyChanged用法,监听属性值发生改变
- DependencyProperties or INotifyPropertyChanged ?