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源的操作也就能正常执行了。