WP构建前台框架之Command

在windows phone 上做过应用的童鞋们基本上都知道 MVVM Light框架, MVVM Light实现了将页面和cs抽离,IOC,以及消息系统。

Command 大家在做WP应用的时候肯定用的非常多,例如button点击事件Command等等。

那Command如果要我们实现,该如何去做呢?

Command起初是设计模式中一个很重要也是十分好用的一个模式。 想了解请参考 http://en.wikipedia.org/wiki/Command_pattern

SilverLight中定义了一个ICommand接口,该接口即为Command pattern的一个实现,接口定义如下:

 

 

在VS中可以看到如下的解释:

1.png

 

ICommand成员函数如下:

       1.CanExecute(object parameter) 用来确定Comand是否可以执行

       2.CanExecuteChanged 事件用来通知使用这个Command控件当前的Command状态改变

       3.Execute(object parameter) 执行特定的行为

 

现在我们来实现一下ICommand, 我们先添加一个类 ActionCommand

ActionCommand 实现如下:

 

WFI1~Y09`82WS@72YX57XST[6]

 

这样,就实现了一个最简单的Command了。

如何使用?

其实跟MVVM Light里面是一样的

image

 

在ViewModel里面申明一个ICommand属性 DoGoToSecondViewCommand

然后通过WP的绑定模式,在XAML绑定DoGoToSecondViewCommand即可生效。

image

 

Command实现就是如此简单。

posted @ 2012-09-12 12:44 Sir。 阅读(...) 评论(...) 编辑 收藏