这段时间闲着无聊,准备用FLEX3来做一些应用,发现了一些问题,主要问题主要出在ComboBox上,也许还会有其他问题,只能是遇到一个算一个了。但愿能够与遇到这个问题的同仁们分享一下。
原有代码(节选):
//获取单位结果列表事件
private function getMUList_result(event:ResultEvent):void{
cmbMU.dataProvider=new ArrayCollection(ArrayUtil.toArray(event.result));
}
其中,cmbMU是个ComboBox控件,getMUList_result是RemoteObject返回结果值事件。
运行该段代码出现“无法访问空对象或属性”错误。
修改代码如下(节选):
[Bindable]
var mulist:ArrayCollection;
……
//获取单位结果列表事件
private function getMUList_result(event:ResultEvent):void{
mulist=new ArrayCollection(ArrayUtil.toArray(event.result));
}
……
<mx:ComboBox id=”cmbMU” dataProvider=”{mulist}” ></mx:ComboBox>
程序运行正常。
由此可见,在FLEX3中的ComboBox存在无法动态赋dataProvider的问题,原因未知。
我作的是AIR程序。
我的运行环境:
FLEX SDK 3(FLEX BUILDER 3自带)
WINDOWS VISTA BASIC