这是我第一篇关于设计模式方面的文章,以前除了对单例模式等几个常用的模式有所研究之外,对设计模式不是太重视,总觉得要到一定的程度才需要接触, 最近的项目中使用了MVVM 模式,所以这段时间查阅了大量这方面模式的文章,理论上的东西大家都说的比较好,这里我也不大谈MVVM 模式的优势了,只是 美中不足的是大部分给出的示例中,对于一个没有用过MVVM 模式的人而言,这些例子总是给人一种摸不着头绪的感觉,所以我想将我学习MVVM 的过程一步步 写下来,希望对于和我一样,刚刚接触MVVM 这个模式的人有一点点帮助。 如果你不知道 MVVM 模式,我建议你先了解一下MVVM 模式,至少要知道实现该模式的意图是什么。 那么我主要通过我认为是已经算是比较简单的例子进行讲解这个模式,当然后面我们会在这个例子的基础上一步一步的进行扩展。 先来看一看我们的项目架构: 很典型的MVVM 的分层方式 我们先来构建 Model,首先在 Person.cs 中简单声明了一个类型 publicclass Person { publicint age { get; set; } publicstring name { get;set;} } 类型定义好后,我们在 Persons.cs 中得到一个Person 的集合 publicclass Persons { public List
person; public ListgetPerson() { person = new List() { new Person{name = "Tom", age = 21 }, new Person{name = "Jack", age = 22 }, new Person{name = "Rose", age = 23 }, }; return person; } } 那么这里我们就简单的完成了Model 的工作,下面开始完成View Model 部分的工作 publicclassPageViewModel { public List Human { get; set; } publicPageViewModel() { Human = newPersons().getPerson(); } } View Model 也设计的很简单,只是简单的获取了之前定义的集合。 下面就是PageView 部分了,这里用 DataGrid 进行显示数据