解析三大Flex數(shù)據(jù)綁定方式
本文向大家簡單介紹一下關(guān)于Flex的幾種綁定,在Flex應(yīng)用中程序中,F(xiàn)lex數(shù)據(jù)綁定的實(shí)際是借助事件機(jī)制來完成的,當(dāng)目標(biāo)使用Flex數(shù)據(jù)綁定的時(shí)候,目標(biāo)對(duì)象就會(huì)監(jiān)聽數(shù)據(jù)源對(duì)象的某一固定事件。
關(guān)于Flex的幾種綁定
在Flex應(yīng)用中程序中,F(xiàn)lex數(shù)據(jù)綁定的實(shí)際是借助事件機(jī)制來完成的,當(dāng)目標(biāo)使用Flex數(shù)據(jù)綁定的時(shí)候,目標(biāo)對(duì)象就會(huì)監(jiān)聽數(shù)據(jù)源對(duì)象的某一固定事件。當(dāng)數(shù)據(jù)源發(fā)生變化時(shí),數(shù)據(jù)源會(huì)派發(fā)改變事件通知目標(biāo)對(duì)象更新數(shù)據(jù)。實(shí)際開發(fā)中我們不需要去關(guān)注具體的實(shí)現(xiàn)過程,這個(gè)過程Flash/Flex會(huì)自動(dòng)去完成。
在Flex中,F(xiàn)lex數(shù)據(jù)綁定主要有四種方式,分別為:"{}"綁定表達(dá)式、[Bindable]綁定符號(hào)、<mx:Binding>標(biāo)簽和BindingUtils動(dòng)態(tài)綁定,下面一一對(duì)這四種Flex數(shù)據(jù)綁定方式進(jìn)行詳細(xì)介紹。
Flex數(shù)據(jù)綁定***種,使用{}綁定
- <mx:TextInputidmx:TextInputid="input"/>
- <mx:Labeltextmx:Labeltext="{input.text}"/>
Flex數(shù)據(jù)綁定第二種,<mx:Binding>綁定
- <mx:Applicationxmlns:mxmx:Applicationxmlns:mx=http://www.adobe.com/2006/mxmllayout="vertical">
- <mx:TextInputidmx:TextInputid="inputSource"/>
- <mx:Labelidmx:Labelid="labelTarget"/>
- <mx:Bindingsourcemx:Bindingsource="inputSource.text"destination="labelTarget.text"/>
- </mx:Application>
Flex數(shù)據(jù)綁定第三種,使用BindingUtils工具類
- BindingUtils.bindProperty
- (
- target,"targetProperty",source,"sourceProperty"
- );
◆target:Object-目標(biāo)
◆targetProperty:目標(biāo)屬性,String類型
◆source:Object-綁定源
◆sourceProperty:源屬性,String類型
- <mx:Applicationxmlns:mxmx:Applicationxmlns:mx=http://www.adobe.com/2006/mxmllayout="vertical">
- <mx:TextInputidmx:TextInputid="inputSource"/>
- <mx:Labelidmx:Labelid="labelTarget"/>
- </mx:Application>
- <script>
- BindingUtils.bindProperty
- (labelTarget,"text",inputSource,"text");
- </script>
【編輯推薦】
- Flex數(shù)據(jù)綁定的概念解讀
- Flex數(shù)據(jù)綁定中難以發(fā)現(xiàn)的無聲錯(cuò)誤
- Flex數(shù)據(jù)綁定陷阱
- FlexBuilder3.0與Eclipse3.4的***結(jié)合
- 剖析Flex DataGrid分頁控件的兩種分頁形式用法