1
,所以我有一个组合框,应该工作如下:ActionScript 3的过滤项进行组合框
- 点击下拉
- 选择项目
- 项目移动到另一个列表
- 项目可以不在较长的组合框第一次下拉找到
所以我创建了一个组合框,如:
<s:ComboBox
id="cbox"
labelFunction="labels"
dataProvider="{objects}"
change="addFilter()"
restrict="a-zA-Z0-9\-,_"
width="100%"
maxChars="32"
prompt="add filter"
/>
我的问题与调用objects.refresh()
茎,因为它在list.as
文件(库)在该行dataGroup.removeEventListener(FlexEvent.UPDATE_COMPLETE, updateCompleteListenerA);
,其中dataGroup
为空失败。在objects
ArrayCollection
我的过滤功能是一样的东西:
private function filterEcus(item:Object):Boolean {
for each (var i:Object in secondList) {
if (i.property == item.property) {
return true;
} else {
return false;
}
}
//should not reach this
return true;
}
我所说的刷新在变化处理程序结束。
我有同样的问题,删除项目不更新组合框,所以我有调用'.refresh()',随后失败。 –
尽量不要在DataBinding中使用DataProvider。这就是它为我工作的方式。您稍后可以在更改事件处理程序中模拟数据绑定。 myCombobox.dataProvider = someArrayList; –
有趣的是,我真的很想回答为什么我的数据过滤器导致问题。我删除了绑定,但仍然无法刷新。 –