Esempio n. 1
0
 public WeakEventHandler(System.EventHandler eventHandler, Oranikle.Studio.Controls.UnregisterCallback unregister)
 {
     m_TargetRef   = new System.WeakReference(eventHandler.Target);
     m_OpenHandler = (Oranikle.Studio.Controls.WeakEventHandler <T> .OpenEventHandler)System.Delegate.CreateDelegate(typeof(Oranikle.Studio.Controls.WeakEventHandler <T> .OpenEventHandler), null, eventHandler.Method);
     m_Handler     = new System.EventHandler(Invoke);
     m_Unregister  = unregister;
 }
Esempio n. 2
0
        public void Invoke(object sender, System.EventArgs e)
        {
            T t = (T)m_TargetRef.Target;

            if (t != null)
            {
                m_OpenHandler(t, sender, e);
                return;
            }
            //if (m_Unregister)
            if (m_Unregister != null)
            {
                m_Unregister(m_Handler);
                m_Unregister = null;
            }
        }