WPF进阶之MVVM教程(三)-点餐系统实操
自写了WPF入门系列(点击学习)文章,收到很多大学生的私信,经常会问一些MVVM的问题,由于自己对MVVM也并不了解,遇到问题也是经常请朋友帮忙看看,趁着业余时间,经过一段时间得学习、开始写MVVM系列的文章,主要写一下自己对MVVM的理解,希望这不仅是对自己成长的记录,也能对同学们有所帮助。
来吧,让我们再次起航,WPF从入门到放弃,再到进阶之路!
欢迎大家在剑指工控技术群里继续讨论、共同学习!
来吧!一起学起来!
第3讲 MVVM教程(三)-点餐系统实操
在前两篇文章的基础上,来实现一个简单点餐系统的Demo,如下图所示:
简单分析一下:
餐馆的名字、地址、订餐电话都是有可能更改,所以这些属性需要Binding到一个ViewModel上去,并且需要一个餐馆的类来作为Model类。
下面的DataGrid里都是菜品的信息,需要一个菜品的Model类。
数据属性有:餐馆信、DataGrid里显示的菜品信息、”共计”里显示的数据。
命令属性有:“Order”操作、DataGrid中的“选中“操作。
分析完成后,下面来看具体的实现。
先建一个Data文件夹,添加一个Data的XML文件,模拟一些基础数据。
为了使xml文件能够跟程序一起发布需要设置xml文件的属性 复制到输出目录=》始终复制 生成操作=》内容,这样这个数据文件就在bin目录下data文件夹下了。
建一个Services文件夹,再建一个IDataService接口去读取XML文件。
建一个GetAllDishes 接口成员 返回的是一个List泛型集合List。
这时候需要用到之前建的Models文件夹,在该文件夹里新建一个Dish类,其对应着Data.xml文件数据。
使用prop+tab快捷键快速建立四个自动属性对应xml文件中四个属性
建一个XmlDataService类来继承IDataService后实现GetAllDishes方法来获取数据信息(IDataService的实现类)
如何实现读取xml文件呢 且听下回分解。
就这么简单!
作者简介:
曹言林:加入工控八余载,从事过单片机编程、控制柜接线、设备维修,PLC编程、上位机编程、MES实施。对各方面虽不是专家级别,也愿为工控圈添砖加瓦,贡献自己的一份力量。
WPF从入门到放弃-回顾