У меня также возникают проблемы с группой элементов управления TextArea, где я хотел бы вместо этого прослушивать событие изменения в их контейнере (родительском элементе).
В итоге я расширил класс TextArea и создал прослушиватель для события change. Затем из слушателя я отправляю пользовательское событие, которое может вспыхнуть.
public class BubblingTextArea extends TextArea
{
public function BubblingTextArea()
{
super();
addEventListener(TextOperationEvent.CHANGE, changeHandler);
}
private function changeHandler(event:TextOperationEvent):void
{
dispatchEvent(new ChangeBubbleEvent(ChangeBubbleEvent.BUBBLE_CHANGE));
}
}
Пользовательское событие:
public class ChangeBubbleEvent extends Event
{
public static const BUBBLE_CHANGE:String = "bubbleChange";
public function ChangeBubbleEvent(type:String, bubbles:Boolean=true, cancelable:Boolean=false)
{
super(type, bubbles, cancelable);
}
}
Я уверен, что кто-то может придумать более элегантное решение, так как я все еще совсем новичок в Flex и AS3.