static void GetChildEventListeners(string strType, Container container, List <EventListener> listeners)
        {
            EventListener listener = container.GetEventListener(strType);

            if (listener != null)
            {
                listeners.Add(listener);
            }
            if (container.gOwner != null)
            {
                listener = container.gOwner.GetEventListener(strType);
                if (listener != null && !listener.isEmpty)
                {
                    listeners.Add(listener);
                }
            }

            int count = container.numChildren;

            for (int i = 0; i < count; ++i)
            {
                DisplayObject obj = container.GetChildAt(i);
                if (obj is Container)
                {
                    GetChildEventListeners(strType, (Container)obj, listeners);
                }
                else
                {
                    listener = obj.GetEventListener(strType);
                    if (listener != null && !listener.isEmpty)
                    {
                        listeners.Add(listener);
                    }

                    if (obj.gOwner != null)
                    {
                        listener = obj.gOwner.GetEventListener(strType);
                        if (listener != null && !listener.isEmpty)
                        {
                            listeners.Add(listener);
                        }
                    }
                }
            }
        }
        static void GetChildEventListeners(string strType, Container container, List<EventListener> listeners)
        {
            EventListener listener = container.GetEventListener(strType);
            if (listener != null)
                listeners.Add(listener);
            if (container.gOwner != null)
            {
                listener = container.gOwner.GetEventListener(strType);
                if (listener != null && !listener.isEmpty)
                    listeners.Add(listener);
            }

            int count = container.numChildren;
            for (int i = 0; i < count; ++i)
            {
                DisplayObject obj = container.GetChildAt(i);
                if (obj is Container)
                    GetChildEventListeners(strType, (Container)obj, listeners);
                else
                {
                    listener = obj.GetEventListener(strType);
                    if (listener != null && !listener.isEmpty)
                        listeners.Add(listener);

                    if (obj.gOwner != null)
                    {
                        listener = obj.gOwner.GetEventListener(strType);
                        if (listener != null && !listener.isEmpty)
                            listeners.Add(listener);
                    }
                }
            }
        }