我使用的列表的編號爲ArrayCollection
,作爲DataProvider
。該列表使用ComboBox
爲項渲染Flex:將組合框中的值綁定爲項目渲染器
我想在列表中的值進行綁定。
您有一個包含多個組合框的列表,並且這些值是從ArrayCollection
動態加載的。
ArrayCollection
包含具有布爾屬性的對象,爲此我應該綁定在comboboxes
中選擇的真/假值。
我使用的列表的編號爲ArrayCollection
,作爲DataProvider
。該列表使用ComboBox
爲項渲染Flex:將組合框中的值綁定爲項目渲染器
我想在列表中的值進行綁定。
您有一個包含多個組合框的列表,並且這些值是從ArrayCollection
動態加載的。
ArrayCollection
包含具有布爾屬性的對象,爲此我應該綁定在comboboxes
中選擇的真/假值。
我們最終制作了自己的組件:CheckboxList
使事情是這樣的:
<?xml version="1.0" encoding="utf-8"?>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import spark.events.IndexChangeEvent;
[Bindable]
private var myAC:ArrayCollection = new ArrayCollection(["True","False"]);
[Bindable]
public var editorSelectedIndex:int;
protected function changeHandler(event:IndexChangeEvent):void
{
data.selectedIndex = event.target.selectedIndex;// TODO Auto-generated method stub
}
]]>
</fx:Script>
<s:RichText color="#2B4381" text="{data.name}" left="0" top="0" width="190" height="100%"/>
<s:ComboBox dataProvider="{myAC}" selectedIndex="{data.selectedIndex}" change="changeHandler(event)" left="200" top="0" height="100%"/>
基本上可以寫回 「數據」 屬性與新的數據。 希望這有助於。
我明白你的意思了。但事情是:我的ArrayCollection是dinamically加載(不知道它會帶來多少對象)。 其中的對象有一個布爾值,我應該綁定選中/未選中的框。 – 2010-04-27 19:33:31
好吧,這很簡單 - 只需修改您的selectedIndex代碼以查看您的布爾值,並在布爾值爲true時指定0值,如果爲false則指定1。這裏關鍵的是你可以讀寫數據屬性。另外,如果您承認我在這裏的貢獻,我會很感激,因爲我花了大量的時間做出這個答案(我建立了一個測試項目,以確保我沒有給你一個不好的答案)。我不喜歡被視爲理所當然。卡斯帕。 – 2010-05-09 22:43:10
哦,還有一件事,myAC變量只是一個引用變量 - 我可以在那裏使用const。它僅被使用,因爲組合框需要數據提供者。 – 2010-05-09 22:47:02