我有一个List组件的CustomItemRenderer,我在这个CustomItemRenderer的onDataChange()事件上设置了list label。
onDataChange事件类型为mx.events.FlexEvent.DATA_CHANGE。
在dataprovider上进行了一些属性更改之后,我正在尝试使用
在类中触发新的mx.events.FlexEvent.DATA_CHANGE_view.EncoderList.dispatchEvent(new mx.events.FlexEvent(mx.events.FlexEvent.DATA_CHANGE));
以下,同样的过程适用于buttonClick fire,
_view.SplitBtn.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
那么,是什么原因导致我无法解雇CustomRenderer的FlexEvent?
注意:已调试并确定其未触发。
答案 0 :(得分:0)
与大多数事件一样,FlexEvent的构造函数如下所示:
public function FlexEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false):void
这意味着,您必须将代码更改为
_view.EncoderList.dispatchEvent(new mx.events.FlexEvent(mx.events.FlexEvent.DATA_CHANGE, true));
为此事件启用事件冒泡。否则,只有将侦听器绑定到调度项本身
才能侦听事件答案 1 :(得分:0)
我无法手动触发FlexEvent.DATA_CHANGE事件,但是当我这样做时
_myListDataProvider.Refresh()
,
FlexEvent.DATA_CHANGE已被触发:)