03 2012 档案
摘要:经过几个晚上时间的奋斗,dbfm7的MVVM改造之旅终于告一段落。从对MVVM的无知到现在对它的半只半解,这个过程还是学到了很多。 MVVM的目的在于使开发分离关注点,写后台逻辑的就写后台,设计UI的就设计UI。不过要达成这一点并不那么容易,比如导航,比如动画(StoryBoard),这些在Vie...
阅读全文
摘要:因为ApplicationBar并不支持数据绑定,所以做MVVM的时候是个麻烦。经过今天的研究终于搞定的了。 我们需要的是一个第三方dll: AppBarUtils 大牛Allen Lee的。下载地址:http://appbarutils.codeplex.com 不过目前所提供的功能来看只支持Text跟Command的绑定,于是我下载源码下来修改了一下,使之支持了IconUri绑定。这就不贴代码了,直接提供改过的dll。 使用: 添加xmlns: xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=Syste..
阅读全文
摘要:这几天使用MVVM重构这个应用,发现一个严重的问题,那就是导航。基于MVVM的思想,View跟ViewModel之间依靠绑定等技术通信,而且是View可以拿到ViewModel,ViewModel不可以拿到View。本来用CodeBehind的时候很容易的导航,到这里就无从下手了。当然也是有办法把View传递到ViewModel的,不过这样就破坏了MVVM的初衷了。 解决这个问题,首先需要解决怎么在ViewModel中得到NavgationServices来导航。以下是解决办法:root = Application.Current.RootVisual as PhoneApplicationF
阅读全文