一、MVVM概述

MVVM是Model-View-ViewModel的简写,主要目的是为了解耦视图(View)和模型(Model)。

MVVM结构如下:

MVVMLight学习笔记(一)---MVVMLight概述_MVVM

相对于之前把逻辑结构写在Code Behind 的方式,MVVM模式几乎完全解耦了视图和逻辑业务的关系,通过数据绑定和命令绑定来处理UI属性及事件驱动;

同时,ViewModel中对属性的变更也会通知到View前端,让View前端实时更新。

关于更多的MVVM,可以参考https://www.codeproject.com/kb/wpf/wpfmvvmquickstart.aspx

 

二、MVVMLight概述

MVVMLight是一个实现MVVM模式的轻量级框架(相对于Prism),能够更好的帮助我们开发WPF 、Windows Phone、Windows 8、SilverLight相关项目。

MVVMLight的作者Laurent Bugnion 是个微软MVP,作者将代码开源到Codeplex上面:http://mvvmlight.codeplex.com/

MVVMLight的官网:http://www.mvvmlight.net/,上面有详细的介绍和视频文档,有兴趣可以了解下。

 

三、WPF项目中使用MVMLight框架

WPF项目中使用MVMLight框架主要包括以下两种方式:

方式一:

官网(http://www.mvvmlight.net/)上下载MVVMLight Toolkit,安装之后,VS模板中会出现MvvmLight项目模板,然后就可以直接使用该项目模板来创建项目了。

方式二:

利用NuGet安装

新建一个WPF工程,在引用处,鼠标右键,选择管理NuGet包,在弹出的界面中搜mvvmlight,然后安装最新的包即可。

MVVMLight学习笔记(一)---MVVMLight概述_NuGet_02

MVVMLight学习笔记(一)---MVVMLight概述_MVVM_03

 

安装成功后,会在我们新建的Wpf工程中自动生成ViewModel文件夹,里面包含MainViewModel.cs和ViewModelLocator.cs两个文件。

至此,一个基于MVVMLight框架的WPF项目基本搭建完成。

 

注:本文参考如下系列文章进行归纳与整理