.Net 开发中用到的MVVM Light Toolkit源码解读

 ----------------------此地留坑----------------------------------


刚刚从一枚准Java程序员 转到.Net开发

  这个过程还是挺爽的  仿佛有打开一个宝藏的大门。

 -------------------------------------------------------------------

namespace GalaSoft.MvvmLight
{
    public class ObservableObject : INotifyPropertyChanged
    {
        public ObservableObject();

        protected PropertyChangedEventHandler PropertyChangedHandler { get; }

        public event PropertyChangedEventHandler PropertyChanged;

        protected static string GetPropertyName<T>(Expression<Func<T>> propertyExpression);
        public virtual void RaisePropertyChanged([CallerMemberName] string propertyName = null);
        public virtual void RaisePropertyChanged<T>(Expression<Func<T>> propertyExpression);
        [Conditional("DEBUG")]
        [DebuggerStepThrough]
        public void VerifyPropertyName(string propertyName);
        protected bool Set<T>(Expression<Func<T>> propertyExpression, ref T field, T newValue);
        protected bool Set<T>(string propertyName, ref T field, T newValue);
        protected bool Set<T>(ref T field, T newValue, [CallerMemberName] string propertyName = null);
    }
}


1.关于mvvm-绑定

通过让数据绑定系统负责这种同步 开发人员可以专注于计算数据对象属性的值而不必担心如何更新UI

此外绑定只是松散耦合 即便绑定的结果无效 应用程序也不会崩溃。

实际情况是 多个视图 与给定的viewmodel关联 或者是 复杂视图拆分为多个viewmodel的情况也并不少见

https://msdn.microsoft.com/zh-cn/magazine/jj651572.aspx



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值