• WPF —— MVVM架构


     1 什么是MVVM?

    MVVM是一种软件架构模式,它将应用程序分为三个层次 model(数据模型),view(视图),viewmodel(视图模型)

    model:表示应用程序当中数据和业务逻辑,通俗来说就是对象。例如学生的姓名和年龄等放到一个class里面,作为一个对象
    view:就是xaml文件,处理用户交互和展示数据的 交互就是事件click,展示就是数据绑定等
    viewmodel:数据和页面之间的桥梁,可以处理一些ui逻辑,也可以处理数据绑定,可以执行ui界面的命令(类似于事件)
    也可以处理ui界面事件。
    三者之间的关系 view对应一个viewmodel,一个viewmodel对应N个model,
    mvvm核心特点数据驱动视图,通过修改数据达到更新界面的效果 

    2 MVVM和WPF关系?

    WPF带来的技术有数据绑定,Binding(绑定)、依赖属性、RoutedEvent(路由事件) 、Command指令
    DataTemplate数据模版、ControlTemple控件模版等技术
    这些技术就可以实现mvvm设计需求。

    3 MVVM优势?

    1.降低view和model之间的耦合度。
    2.提高代码的重用性和可维护性。
    3.简化了单元测试 
    4.支持双向绑定,数据可以更改界面,界面更新也会影响数据
    5 利用wpf里面强大的特性

    4 wpf实现mvvm设计模式 需要知识点

      1INotifyPropertyChanged,我们在使用Binding绑定数据时候,通过修改数据不会达到界面更新的效果,原因

    就是在数据变化没有发出通知,所以可以这个接口检查到属性变化之后发出通知。

       2ICommand:wpf一种机制,类似于事件绑定,但是又和事件绑定有区别,
       例如有几个页面需要绑定点击的时候关闭窗体的功能,如果是采用事件绑定,可以在每一个页面添加绑定,
      命令可以写在其他类里面,由不同窗体进行调用
      事件绑定具有局限性,
      命令系统内置一部分的命令 ,内置的指令有复制 粘贴、剪切等指令 也可以通过ICommand创建一个命令

  • 相关阅读:
    天龙八部科举答题问题和答案(全3/8)
    使用spring security实现角色继承的权限控制
    深入协议栈了解TCP的三次握手、四次挥手、CLOSE-WAIT、TIME-WAIT。
    EDI对接 New York & Company案例
    opengauss数据备份(docker中备份)
    Mybatis简介
    无胁科技-TVD每日漏洞情报-2022-11-11
    java基于ssm的图书销售库存管理入库信息系统
    FPGA TestBench编写学习
    内存取证之NSSCTF-OtterCTF 2018(复现赛)
  • 原文地址:https://blog.csdn.net/lu2023_8_6/article/details/138197912