WPF进阶之MVVM教程(三)-点餐系统实操

自写了WPF入门系列(点击学习)文章,收到很多大学生的私信,经常会问一些MVVM的问题,由于自己对MVVM也并不了解,遇到问题也是经常请朋友帮忙看看,趁着业余时间,经过一段时间得学习、开始写MVVM系列的文章,主要写一下自己对MVVM的理解,希望这不仅是对自己成长的记录,也能对同学们有所帮助。

来吧,让我们再次起航,WPF从入门到放弃,再到进阶之路!

欢迎大家在剑指工控技术群里继续讨论、共同学习!

来吧!一起学起来!

  1. WPF进阶之MVVM教程(一)

  2. WPF进阶之MVVM教程(二)(附源码下载)

第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从入门到放弃-回顾

  1. WPF入门到放弃(一) | 安装与创建

  2. WPF入门到放弃(二) | 初识XAML

  3. WPF入门到放弃(三)| 制作串口调试助手

  4. WPF入门到放弃(四)| 给串口调试助手列表赋值(附调试软件)

  5. WPF入门到放弃(五)| 串口的读取与写入(程序&附串口调试精灵)

  6. WPF入门到放弃(六)| 画面优化与发布(附源程序)

  7. WPF入门到放弃(七)| 常用布局控件的用法

  8. WPF入门到放弃(八)| 常用的控件(二)

  9. WPF入门到放弃(九)|  读取excel数据并写入sqlite数据库中(附免安装连接数据库工具)

  10. WPF入门到放弃(完结篇)| sqlite以及数据复用(附总源码分享)

 

Tags: