WPF进阶之MVVM教程(五):ViewModel
自写了WPF入门系列(点击学习)文章,收到很多大学生的私信,经常会问一些MVVM的问题,由于自己对MVVM也并不了解,遇到问题也是经常请朋友帮忙看看,趁着业余时间,经过一段时间得学习、开始写MVVM系列的文章,主要写一下自己对MVVM的理解,希望这不仅是对自己成长的记录,也能对同学们有所帮助。
来吧,让我们再次起航,WPF从入门到放弃,再到进阶之路!
欢迎大家在剑指工控技术群里继续讨论、共同学习!
来吧!一起学起来!
第5讲
MVVM教程(五)-ViewModel
ViewModel主要起到对数据的过滤和校验的工作,这样的话从ViewModel传回来的数据就是干净的数据,起到对Model的保护的作用,视频是使用prism框架实现的,做项目也基本使用框架,那样功能更加强大,也更方便,由于prism框架也是刚学习,不是很熟悉,我们就用之前自己写的两个基类来实现,效果也是一样的,下面开始建ViewModel。
首先添加一个菜品菜单的ViewModel一个类:DishMenuItemViewModel
继承之前写的NotifyBase的基类,并引用相应的名称空间。
需要新建两个属性,
一个是:是否选中IsSelected
一个是:Model类型的Dish
IsSelected可以使用之前创建的快捷键propn连续按两下tab键来快速新建
主要的View的ViewModel还用之前的MainWindowViewModel
将之前的代码屏蔽,新建两个命令属性
PlaceOrderCommand 下单的命令属性 SelectMenuItemCommand选择菜品的命令属性
新建显示选中几个菜品和餐馆对象属性
新建用来显示菜品信息的属性和加载菜馆信息的方法
新建菜品信息的方法和使用LINQ查询出是否选中的数量。
查询选中的菜品的名称,调用下订单的方法 写入到指定路径,加载餐馆、菜单信息、执行委托命令
ViewModel部分完成了。
下次主要讲解View部分的实现。
就这么简单!
作者简介:
曹言林:加入工控八余载,从事过单片机编程、控制柜接线、设备维修,PLC编程、上位机编程、MES实施。对各方面虽不是专家级别,也愿为工控圈添砖加瓦,贡献自己的一份力量。
WPF从入门到放弃-回顾
欢迎大家在剑指工控技术群里继续讨论、共同学习!来吧!一起学起来!