成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Adobe Flex提供三種方法指定Flex數據綁定

開發(fā) 后端
本文向大家介紹一下Flex數據綁定概念,它需要一個源屬性,一個目的屬性,以及用于表明何時將數據從源屬性拷貝到目的屬性的觸發(fā)事件。

本文和大家重點學習一下Flex數據綁定,Adobe Flex 提供三種方法用于指定Flex數據綁定:MXML 中的大括號({})語法,MXML 中的<mx:Binding>標記,以及ActionScript 中的BindingUtils 的系列方法。

關于Flex數據綁定

Flex數據綁定是將一個對象中的數據同另一個對象中的數據聯(lián)系在一起的過程。Flex數據綁定為在應用的不同層之間傳遞數據提供了便捷方法。Flex數據綁定需要一個源屬性,一個目的屬性,以及用于表明何時將數據從源屬性拷貝到目的屬性的觸發(fā)事件。當源屬性變化時,對象發(fā)出觸發(fā)事件。

Adobe Flex 提供三種方法用于指定Flex數據綁定:MXML 中的大括號({})語法,MXML 中的<mx:Binding>標記,以及ActionScript 中的BindingUtils 的系列方法。


(1)下面的例子使用大括號({})語法來展示一個Text 控件,該控件的數據來自于TextInput 控件Text 屬性: 

  1. <?xml version="1.0"?> 
  2. <!-- binding/BasicBinding.mxml --> 
  3. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> 
  4. <mx:TextInput id="myTI" text="Enter text here"/> 
  5. <mx:Text id="myText" text="{myTI.text}"/> 
  6. </mx:Application> 
  7.  

 Flex數據綁定表達式中可以將ActionScript 代碼以及E4X 表達式作為一部分包含進來,如下例所示:
 

  1. <?xml version="1.0"?> 
  2. <!-- binding/BasicBindingWithAS.mxml --> 
  3. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> 
  4. <mx:TextInput id="myTI"/> 
  5. <mx:Text id="myText" text="{myTI.text.toUpperCase()}"/> 
  6. </mx:Application> 

 
(2)用<mx:Binding>標記作為大括號語法的替代方法。

在使用<mx:Binding>時,要為<mx:Binding>標記提供一個源屬性作為標記的source 屬性以及提供一個目的屬性作為標記的destination 屬性。下面的例子使用<mx:Binding>標記定義了一個從TextInput 控件到Text 控件的Flex數據綁定:

  1. <?xml version="1.0"?> 
  2. <!-- binding/BasicBindingMXML.mxml --> 
  3. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> 
  4. <mx:TextInput id="myTI"/> 
  5. <mx:Text id="myText"/> 
  6. <mx:Binding source="myTI.text" destination="myText.text"/> 
  7. </mx:Application> 
  8.  

 同大括號語法相比,用<mx:Binding>標記能夠將視圖(用戶界面)同模型完全分離。
<mx:Binding>標記也能實現將多個源屬性綁定到一個相同的目的屬性,這是因為能夠定義多個具有相同的destination 屬性的<mx:Binding>標記.

大括號語法和<mx:Binding>標記都能在編譯期定義Flex數據綁定,而使用ActionScript 代碼則可以在運行期定義Flex數據綁定,如下例所示: 

  1. <?xml version="1.0"?> 
  2. <!-- binding/BasicBindingAS.mxml --> 
  3. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> 
  4. <mx:Script> 
  5. <![CDATA[  
  6. import mx.binding.utils.*;  
  7. // Define data binding.  
  8. public function initBindingHandler():void {  
  9. BindingUtils.bindProperty(myText, "text", myTI, "text");  
  10. }  
  11. ]]> 
  12. </mx:Script> 
  13. <mx:TextInput id="myTI"/> 
  14. <mx:Text id="myText" preinitialize="initBindingHandler();"/> 
  15. </mx:Application> 
  16.  

 
(3)創(chuàng)建用作Flex數據綁定源的屬性

當創(chuàng)建一個用于綁定表達式源的屬性,那么在源屬性值發(fā)生變化時Flex 就能自動將值拷貝到所有的目的屬性。為了讓Flex 執(zhí)行拷貝,必須使用[Bindable]標記來向Flex 注冊這個屬性。
The [Bindable] 元數據標記有以下語法:
 

  1. [Bindable]  
  2. [Bindable(event="eventname")] 

如果忽略了事件名稱,Flex 自動地創(chuàng)建一個名為propertyChange 的事件,并且在屬性發(fā)生變化時,由Flex 發(fā)出這個事件以觸發(fā)所有以這個屬性作為源的Flex數據綁定。

下面的例子作了一個maxFontSize 屬性和一個minFontSize 屬性變量可用于Flex數據綁定表達式的源:
 

  1. <?xml version="1.0"?> 
  2. <!-- binding/FontPropertyBinding.mxml --> 
  3. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> 
  4. <mx:Script> 
  5. <![CDATA[  
  6. // Define public vars for tracking font size.  
  7. [Bindable]  
  8. public var maxFontSize:Number = 15;  
  9. [Bindable]  
  10. public var minFontSize:Number = 5;  
  11. ]]> 
  12. </mx:Script> 
  13. <mx:Text text="{maxFontSize}"/> 
  14. <mx:Text text="{minFontSize}"/> 
  15. <mx:Button click="maxFontSize=20; minFontSize=10;"/> 
  16. </mx:Application> 

【編輯推薦】

  1. 術語匯編 Flex數據綁定概述
  2. Flex數據綁定陷阱
  3. Flex數據綁定中難以發(fā)現的無聲錯誤
  4. 解析Flex全屏模式設置方法
  5. Flex內存泄露解決方法和內存釋放優(yōu)化原則

 

責任編輯:佚名 來源: myspace.com
相關推薦

2010-07-29 09:56:45

Flex數據庫

2010-08-13 15:08:55

Flex數據訪問

2010-07-30 11:03:54

Flex數據綁定

2010-08-09 15:09:27

Flex數據訪問

2010-07-28 13:31:10

Flex數據綁定

2010-07-28 13:48:49

Flex數據綁定

2010-07-28 13:11:13

Flex數據綁定

2010-07-28 13:54:42

Flex數據綁定

2010-07-30 09:08:21

Flex數據綁定

2010-08-12 11:34:15

Flex數據綁定

2010-08-05 15:06:19

Flex數據綁定

2010-08-11 14:09:07

Flex3.0數據綁定

2010-08-03 09:20:33

Flex讀取XML配置

2010-07-28 13:40:44

Flex數據綁定

2010-08-10 10:56:39

2010-08-02 16:47:46

Flex

2023-05-16 16:07:07

大數據數據管理工具

2021-10-09 06:59:36

技術MyBatis數據

2010-10-20 13:52:07

SQL Server數

2009-07-08 12:56:32

編寫Servlet
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧产日产国产精品视频 | 亚洲成人精 | 精品日韩 | 美女久久久久久久 | 国产精品一区在线 | 成人高潮片免费视频欧美 | 亚洲精品在 | 天天在线操| 91啪亚洲精品 | 91精品国产91综合久久蜜臀 | 国产日韩精品一区二区三区 | 亚洲欧美日韩在线 | 毛片一级网站 | 亚洲精品一区二区三区免 | 久久久久久国产精品免费免费狐狸 | 日韩一区二区三区在线观看 | 99pao成人国产永久免费视频 | 天天干天天爽 | 天堂中文在线播放 | 欧美一区二区在线免费观看 | 国产成人免费观看 | 亚洲国产精品成人综合久久久 | 91资源在线 | 中文字幕av第一页 | 日韩成人免费av | 爱操影视 | 九九热在线免费视频 | 成人欧美一区二区三区视频xxx | 免费视频成人国产精品网站 | 九色www | 精品欧美黑人一区二区三区 | 91av在线不卡 | 国产不卡视频在线 | 精品视频亚洲 | a在线视频 | www.成人在线视频 | 久久av影院 | 精品久久精品 | 国产japanhdxxxx麻豆 | 亚洲成人动漫在线观看 | 人人九九精 |