Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 使用flex 4列表和multiselect进行双向数据绑定_Xml_Actionscript 3_Flex4 - Fatal编程技术网

Xml 使用flex 4列表和multiselect进行双向数据绑定

Xml 使用flex 4列表和multiselect进行双向数据绑定,xml,actionscript-3,flex4,Xml,Actionscript 3,Flex4,如果我有一些xml,比如一系列语言,如下所示: <otherLanguages> <language code="fr" localName="Français" englishName="French" lastModified="5/30/2012 2:42:18 PM" whenCreated="5/30/2012 2:42:18 PM" baseId="2809988" included="false"/> <language baseId="2809989

如果我有一些xml,比如一系列语言,如下所示:

<otherLanguages>
<language code="fr" localName="Français" englishName="French" lastModified="5/30/2012 2:42:18 PM" whenCreated="5/30/2012 2:42:18 PM" baseId="2809988" included="false"/>
<language baseId="2809989" lastModified="5/30/2012 2:44:57 PM" whenCreated="5/30/2012 2:44:57 PM" englishName="Spanish" localName="Español" code="es" included="false"/>
</otherLanguages>

我想将其绑定到spark multiselect列表,如何将items selected值绑定到xml元素的included属性?此外,如果取消选择该值,它如何将该值从true自动切换为false


谢谢你的提示

将xml作为XMLListCollection馈送到列表中。然后单击处理所选的编辑项。请阅读下面给出的代码片段,可能会有所帮助

<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml”
layout=”absolute”
creationComplete=”init()”>
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;

[Bindable]
var selectedArr : ArrayCollection;

public function init() : void
{
selectedArr = new ArrayCollection();

list.selectedItems = selectedArr.toArray();
}

public function selected(event:Event) : void
{
var selected : String = arr.getItemAt(event.currentTarget.selectedIndex).toString();
if(!selectedArr.contains(selected))
{
selectedArr.addItem(selected);
}
else
{
selectedArr.removeItemAt(selectedArr.getItemIndex(selected));
}
list.selectedItems = selectedArr.toArray();
}
]]>
</mx:Script>
<mx:List     id=”list”
x=”251?
y=”77?
dataProvider=”{arr}”
width=”356?
click=”selected(event)”
allowMultipleSelection=”true”></mx:List>
</mx:Application>


最简单的方法是创建一个双向可绑定的ArrayCollection。我会将其标记为正确的,因为它似乎可以工作。在我的情况下,我使用了一个数据组和复选框,效果很好。