Apache flex 动态填充组合框(Flex)
我想在单击按钮后填充一个组合框 这是我的代码:Apache flex 动态填充组合框(Flex),apache-flex,actionscript-3,Apache Flex,Actionscript 3,我想在单击按钮后填充一个组合框 这是我的代码: var dpNames:ArrayCollection = new ArrayCollection(); for each(var ca:Categorie in arrCategories) { dpNames.addItem ({label: ca.name, data: ca.value}); } cbWijzigCategorie.dataProvider = dp
var dpNames:ArrayCollection = new ArrayCollection();
for each(var ca:Categorie in arrCategories)
{
dpNames.addItem ({label: ca.name, data: ca.value});
}
cbWijzigCategorie.dataProvider = dpNames;
但当他执行最后一行时,我得到了以下错误:
TypeError:错误#1009:无法访问
空对象的属性或方法
参考资料
我不知道为什么
非常感谢,
Vincent你的组合框是否已实例化? 查看错误消息,问题可能来自“cbWijzigCategorie.datprovider”。它无法访问dataprovider属性,因为CBWIJZIGCATEGRIE为空 将数据提供程序分配到组合框的位置?组件内部还是外部 注意。
专用函数分类单击(evt:ItemClickEvent):无效
private function categorieItemClick(evt:ItemClickEvent):void
{
var dpNames:ArrayCollection = new ArrayCollection();
for each( var ca:Categorie in arrCategories)
{
dpNames.addItem ({label: ca.Name, data: ca.Name});
}
cbWijzigCategorie.dataProvider = dpNames;
}
<mx:ButtonBar
x="10" y="36"
id="tbtnbarCategorie"
dataProvider="vsCategorie"
itemClick="categorieItemClick(event)">
</mx:ButtonBar>
<mx:ViewStack
x="10" y="64"
id="vsCategorie"
width="601" height="343">
<mx:Canvas label="Wijzig categorie"
id="cnvsChangeCategorie"
width="100%" height="100%">
<mx:Label
x="10" y="10"
text="Kies categorie"/>
<mx:ComboBox
x="101" y="8"
id="cbWijzigCategorie"></mx:ComboBox>
</mx:Canvas>
</mx:ViewStack>
{
var dpNames:ArrayCollection=new ArrayCollection();
对于每个(变量ca:在类别中分类)
{
dpNames.addItem({label:ca.Name,data:ca.Name});
}
CBWIJZIGCATEGRIE.dataProvider=dpNames;
}
确保属性不为空且正确初始化