MvvmLight(一)准备和介绍

准备和介绍

前提

尽管网上有很多博文来介绍Mvvm,但没有发现一个博主的文章,只要让人看他的,就能会用,就能解决任务和工作中的问题,我尽量去掉废话,压缩篇幅,标清序号,目的在于能总结自己在这个地方走过的路,同时不会的人看我的这系列文章,他不会,也能解决大部分问题……,还有,不要去看什么WPF的书,我在群里见了很多求教Mvvmlight的人,其他人胡诌半天也没有说出怎么用,让去看书居然是

介绍

下面的介绍看一遍即可,看个大概就行,有一丢丢概念即可,不要去扣,用代码去验证,你就懂了!

  1. Mvvm是一种框架,但很多人都不尽然,觉的这只是一种设计模式,这样说也没错,它脱胎于MVC,是一个专注于WPF的MVC的框架,但是这种思想可以无限延伸,博主对于这方面的问题是有人和我争论,他说是框架我就嗯嗯,他说是设计模式我就说对对。

  2. MVVM的样子我学习的时候看网上的图片,但是总结的时候,没有一幅满意的,我融合于自己在WPF项目中学到的东西自己绘制了一幅图如下并简单解析(上到下):
    这里写图片描述

    • 用户明白的只有自己想要的功能及界面,界面即这里的View,所以是单向箭头,不断对设计人员提出界面的修改

    • View很少涉及到代码,用户在View上的一个TextBox上输入”焖面”,功能要求将输入的”焖面”变成“潘鹏想吃焖面”输出,那么程序员需要两步:
      -1.获取到View上输入的值。
      -2.将获取的值在ViewModel上处理,即前面加上”潘鹏想吃”,然后输出到View上 。
      -解释:中间是双向箭头,通过DataBinding(数据绑定)来完成上面两步,View上的TextBox用数据绑定ViewModel上的一个String的属性,如果在View上TB输入”焖面”,属性就获取到这个值了,而且,这个值改变,TB上面的值就改变了

    • View上有一个Button,按下去的时候才显示”潘鹏想吃焖面“,那意思是Click的时候ViewModel才将输入的值加工,通过Command将View上的Button与ViewModel的方法绑定,Click界面的时候,就自动跳到ViewModel的方法中,所以是左边的单向箭头

    • ViewModel中的方法要求弹出另一个窗口B,你怎么做,在ViewModel中new B,然后Show吗,也可以,如果你的美工没有绘制好B界面,你怎么写,去new谁,是不是耦合太紧了,你可以用Messenger来通知到一个方法中,继续写你的代码,到时候B界面绘制好了,在通知的方法中new就可以了,所以是右边的单向箭头,因为有些人习惯new其他窗口写在View层,所以箭头指向View

    • Model层来构建底层的数据结构,例如我的Person类,里面老生常谈的Name\Age\Sex……,或者可以写逻辑的代码,如果点了什么,就是什么,也有人喜欢单独把逻辑部分抽离,就是Logic

准备

  1. 用NeGet下载Mvvmlight即可!
    这里写图片描述
    博主当时用NeGet下载,花费3小时而未成功,去官网3分钟即搞定。

2.新建项目的时候就会有如下的WPF模板,直接用即可
这里写图片描述

结尾

1.如果你没有这方面的知识,看完这篇文章,你就可以对自己说已经对MVVM有个认识了
2.刚学的人肯定会第一手找不到这么细的资料,因为网上有很多去介绍DataBinding……是怎么实现的,所以导致刚接触上手效率低,何必在初期去弄懂他呢
3.还是掺杂了很多个人感情在里面,博主在发表前又看了一遍,想想自己博文既然是自己当做娱乐,那为何不可抒发个人的情感呢,对家乡的思念及对程序的一些认识观

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值