for each (var graphic:Graphic in featureSet.features)
{
var category:String = graphic.attributes.category;
var subcat:String = graphic.attributes.subCategory;
var data:Object = {
category: category,
subcat: subcat
}
cboCategory.dataProvider = data.subcat;
}
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo" minWidth="1024" minHeight="768"
xmlns:esri="http://www.esri.com/2008/ags" xmlns:mx2="library://ns.adobe.com/flex/mx"
creationComplete="creationCompleteHandler(event)">
<fx:Script>
<![CDATA[
import com.esri.ags.FeatureSet;
import com.esri.ags.Graphic;
import com.esri.ags.events.QueryEvent;
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.events.FlexEvent;
protected function creationCompleteHandler(event:FlexEvent):void
{
queryData();
}
private function queryData():void
{
queryTask.execute(query);
queryTask.addEventListener(QueryEvent.EXECUTE_COMPLETE, onQueryComplete);
}
private function onQueryComplete(event:QueryEvent):void
{
var featureSet:FeatureSet = event.featureSet;
var results:ArrayCollection = new ArrayCollection();
for each (var graphic:Graphic in featureSet.features)
{
var fieldValue1:String = graphic.attributes["STATE_NAME"].toString();
results.addItem({label1: fieldValue1, data:graphic});
var fieldValue2:String = graphic.attributes["POP2000"].toString();
results.addItem({label2: fieldValue2, data:graphic});
}
cmb1.labelField = "label1";
cmb1.dataProvider = results;
cmb2.labelField = "label2";
cmb2.dataProvider = results;
}
]]>
</fx:Script>
<fx:Declarations>
<esri:QueryTask
id="queryTask"
useAMF="false"
url="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/5"/>
<esri:Query
id="query"
returnGeometry="false"
where="1=1"
outFields='["STATE_NAME","POP2000"]'/>
</fx:Declarations>
<s:ComboBox id="cmb1" x="179" y="205" labelField=""/>
<s:ComboBox id="cmb2" x="479" y="205" labelField=""/>
</s:Application>
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo"
minWidth="1024" minHeight="768"
xmlns:esri="http://www.esri.com/2008/ags"
xmlns:mx2="library://ns.adobe.com/flex/mx"
creationComplete="creationCompleteHandler(event)">
<fx:Script>
<![CDATA[
import com.esri.ags.FeatureSet;
import com.esri.ags.Graphic;
import com.esri.ags.events.QueryEvent;
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.events.FlexEvent;
protected function creationCompleteHandler(event:FlexEvent):void
{
queryData();
}
private function queryData():void
{
queryTask.execute(query);
queryTask.addEventListener(QueryEvent.EXECUTE_COMPLETE, onQueryComplete);
}
private function onQueryComplete(event:QueryEvent):void
{
var featureSet:FeatureSet = event.featureSet;
var results:ArrayCollection = new ArrayCollection();
var results2:ArrayCollection = new ArrayCollection();
for each (var graphic:Graphic in featureSet.features)
{
var fieldValue1:String = graphic.attributes["STATE_NAME"].toString();
results.addItem({label1: fieldValue1, data:graphic});
var fieldValue2:String = graphic.attributes["POP2000"].toString();
results2.addItem({label2: fieldValue2, data:graphic});
}
cmb1.labelField = "label1";
cmb1.dataProvider = results;
cmb2.labelField = "label2";
cmb2.dataProvider = results2;
}
]]>
</fx:Script>
<fx:Declarations>
<esri:QueryTask
id="queryTask"
useAMF="false"
url="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/5"/>
<esri:Query
id="query"
returnGeometry="false"
where="1=1"
outFields='["STATE_NAME","POP2000"]'/>
</fx:Declarations>
<s:ComboBox id="cmb1" x="179" y="205" labelField=""/>
<s:ComboBox id="cmb2" x="479" y="205" labelField=""/>
</s:Application>