WEB开发网
开发学院软件开发Java 基于 Cairngorm MVC 框架的 Flex 程序设计与开发 阅读

基于 Cairngorm MVC 框架的 Flex 程序设计与开发

 2010-08-16 00:00:00 来源:WEB开发网   
核心提示: 然后将 _model.personInfos 作为 DataGrid 的 dataProvider, 为 <mx:DataGrid> 添加如下属性:清单 7.dataProvider="{_model.personInfos}"定义 FrontController

然后将 _model.personInfos 作为 DataGrid 的 dataProvider, 为 <mx:DataGrid> 添加如下属性:

清单 7.

dataProvider="{_model.personInfos}" 

定义 FrontController

事件分发后,应该执行一个对应的命令,命令通过执行相应的业务逻辑,更新数据,从而视图得到更新,那到底事件和命令之间是如何映射的呢?

在包 control 中新建一个 ActionScript class,取名为 MyFrontControl.as,代码如下:

清单 8. MyFrontControl.as

 package control 
 { 
  import com.adobe.cairngorm.control.FrontController; 
 import event.*; 
  import commands.*; 
  public class MyFrontControl extends FrontController 
  { 
  public function MyFrontControl() 
  { 
   super(); 
  
 //注册一个事件,将其与一个命令绑定 
  
 this.addCommand(LoadPersonsEvent.EVENT_ID,LoadPersonCommand); 
  } 
  
  } 
 } 

这里的 addCommand() 方法将事件和命令关联起来 , 第一个参数是事件的 name,第二个参数是具体的命令类,这里 LoadPersonCommand 还没有定义,编译错,下面就来定义 LoadPersonCommand.

定义 Command

新建一个 ActionScript class,取名为 LoadPersonCommand.as,实现 ICommand 接口,

命令调用服务代理完成相应的逻辑,然后通过更新数据,间接的反映到视图上,所以命令中需要维护 ModelLocator 单例的引用,每个命令类的入口函数是 execute() 方法。

代码如下:

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:基于 Cairngorm MVC

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接