/// <summary>
 /// Provides derived classes an opportunity to handle changes to the IsActive property.
 /// </summary>
 protected virtual void OnIsActiveChanged(DependencyPropertyChangedEventArgs e)
 {
     if (_isActiveReentrantFlag.CanEnter)
     {
         using (_isActiveReentrantFlag.Enter())
         {
             if (LayoutElement != null)
             {
                 LayoutElement.IsActive = ( bool )e.NewValue;
             }
         }
     }
 }
        protected override void OnVisibilityChanged()
        {
            if (_anchorable != null && _anchorable.Root != null)
            {
                if (_visibilityReentrantFlag.CanEnter)
                {
                    using (_visibilityReentrantFlag.Enter())
                    {
                        if (Visibility == System.Windows.Visibility.Hidden)
                        {
                            _anchorable.Hide(false);
                        }
                        else if (Visibility == System.Windows.Visibility.Visible)
                        {
                            _anchorable.Show();
                        }
                    }
                }
            }

            base.OnVisibilityChanged();
        }
 private void _anchorable_IsVisibleChanged(object sender, EventArgs e)
 {
     if (_anchorable != null && _anchorable.Root != null)
     {
         if (_anchorableVisibilityReentrantFlag.CanEnter)
         {
             using (_anchorableVisibilityReentrantFlag.Enter())
             {
                 if (_anchorable.IsVisible)
                 {
                     Visibility = Visibility.Visible;
                 }
                 else
                 {
                     Visibility = Visibility.Hidden;
                 }
             }
         }
     }
 }
Beispiel #4
0
        public int HookProc(int code, IntPtr wParam, IntPtr lParam)
        {
            if (code == Win32Helper.HCBT_SETFOCUS)
            {
                if (FocusChanged != null)
                {
                    FocusChanged(this, new FocusChangeEventArgs(wParam, lParam));
                }
            }
            else if (code == Win32Helper.HCBT_ACTIVATE)
            {
                if (_insideActivateEvent.CanEnter)
                {
                    using (_insideActivateEvent.Enter())
                    {
                        //if (Activate != null)
                        //    Activate(this, new WindowActivateEventArgs(wParam));
                    }
                }
            }


            return(Win32Helper.CallNextHookEx(_windowHook, code, wParam, lParam));
        }
Beispiel #5
0
 protected void FixChildrenDockLengths()
 {
     using (_fixingChildrenDockLengths.Enter())
         OnFixChildrenDockLengths();
 }