我正在尝试设置组合框的数据提供者。我有 2 个组合框:cb_div 和 cb_stores。对于 cb_div,我可以使用 XML 文件正确设置数据提供程序。cb_stores 的 dataprovider 将根据 cb_div 的选择项来设置。
首先,这是我的 XML 文件。cb_div 的数据提供者:
<?xml version="1.0" encoding="UTF-8"?>
<divisions>
<division id="Japan">Japan</division>
<division id="Europe">Europe</division>
</divisions>
cb_stores 的数据提供者:
<list>
<stores name="Europe">
<store>BOUTIQUE HARROD'S</store>
<store>GALERIES LAFAYETTE LILLE</store>
<store>GALERIES LAFAYETTE SAISONNIERE</store>
</stores>
<stores name="Japan">
<store>ODEIS PACK HANZOMON</store>
<store>GINZA</store>
<store>OMOTESANDO</store>
</stores>
</list>
我要做的是:如果用户在 cb_div 中选择“日本”,则 cb_stores 的数据提供者应该是 下的商店<stores name="Japan">
,如果他选择“欧洲”,则数据提供者应该是<stores name="Europe">
。
这就是我所做的,但它不起作用:它返回每个商店。
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private function division_change():void
{
Alert.show(division.selectedItem.toString());
var temp:XMLList = stores.stores.(@name=division.selectedItem);
store.dataProvider = temp.store;
}
]]>
</mx:Script>
<mx:VBox verticalGap="10">
<mx:ComboBox id="division" dataProvider="{divisions.division}" change="division_change()" prompt=" "/>
<mx:ComboBox id="store" prompt=" "/>
<mx:TextInput id="password" displayAsPassword="true"/>
</mx:VBox>
感谢您的任何帮助,您可以提供。
问候