CozyRSS开发记录12-MVVM,绑定RSS源和数据

1、引入MvvmLight

MVVM最近貌似在前端那块也挺火的。据说,WPF的程序如果不用MVVM,那跟MFC和winform的,也没啥区别。用上MVVM,程序瞬间高大上。MVVM的好处和介绍,网上多得是,这里也不多说,推荐一篇比较好的文章:

http://www.codeproject.com/Articles/165368/WPF-MVVM-Quick-Start-Tutorial

MVVM相关的库也很多,比较有名的有:Prism、ReactiveUI、MvvmLight、Caliburn.Micro,它们之间的对比什么的,网上有一些介绍,总而言之,就是各有优劣。

我在CozyRSS里选用的是MvvmLight,原因是:

A、轻量

B、好用,有各种模版

C、开源跨平台

同样的,我们用nuget把MvvmLight导入到工程中,然后绑定一项文本:

2、绑定RSS源列表

接下来,我们把列表和列表项也绑定到viewmodel:

最后,让FeedManageService读取到数据,就能正常的显示了:

3、删除一项RSS源的命令和消息

响应每一项的删除,我们将删除按钮绑定到命令:

命令里除了删除自己外,再发消息通知列表的vm来删除显示项:

这样,删除RSS源的操作也就能正常执行了。

最新文章

  1. div水平居中且垂直居中
  2. 内存工具类:MemoryManager
  3. png图片尺寸大小调整
  4. Oracle 免费的数据库--Database 快捷版 11g 安装使用与"SOD框架"对Oracle的CodeFirst支持
  5. top状态及其常用技巧
  6. WWDC 2013 Session笔记 - iOS7中的多任务
  7. c++之socket,阻塞模式
  8. 微信去除 防欺诈盗号请勿支付或输入qq密码 以及 防欺诈或盗号请不要输入qq密码 的方法
  9. Eclipse中进行Gradle+Jetty部署的web项目的断点调试
  10. discuz x2 diy 模块的样式点击不管用,模块的数据、标题都可以编辑
  11. JavaSE复习_6 枚举类
  12. SQL中自定义拆分为新表的函数
  13. 公众号开发学习Day01
  14. HTTP协议 HttpWebRequest和 Socket的一点总结
  15. SNS社交系统“ThinkSNS V4.6”活动应用功能详解及应用场景举例
  16. 关于atom无限意外退出的一个原因
  17. new/new[]和delete/delete[]是如何分配空间以及释放空间的
  18. lvm管理卷之缩减卷大小
  19. Html 助手
  20. Find the Missing Number II

热门文章

  1. centos 7.0 编译安装php 7.0.3
  2. Maven之构件
  3. Eclipse 导入外部项目无法识别为web项目并且无法在部署到tomcat下
  4. gulp 实现 js、css,img 合并和压缩
  5. pycharm svn服务器访问不了的问题。
  6. excel to datatable (c#用NPOI将excel文件内容读取到datatable数据表中)
  7. python 2.7 学习笔记--day1--基础语句和语法
  8. 在WPF中使用WinForm控件方法
  9. markdown简介
  10. opengl es中不同的绘制方式