Exemple #1
0
        protected virtual void OnCollapsed()
        {
            if (IsVisible && _isTemplateApplyPostponed)
            {
                OnApplyTemplate();
            }

            if (!AutoResizeGrid)
            {
                _expandSite.SetCurrentValue(VisibilityProperty, Visibility.Collapsed);

                return;
            }

            if (!(Parent is Grid grid))
            {
                return;
            }

            switch (ExpandDirection)
            {
            case ExpandDirection.Left:
            case ExpandDirection.Right:
            {
                var column           = Grid.GetColumn(this);
                var columnDefinition = grid.ColumnDefinitions[column];

                if (_previousMaxLength is null)
                {
                    _previousMaxLength = columnDefinition.MaxWidth;
                }

                _previousActualLength = columnDefinition.ActualWidth;
                AnimateMaxWidth(columnDefinition, columnDefinition.ActualWidth, _headerSiteBorder.ActualWidth, ExpandDuration);

                break;
            }

            case ExpandDirection.Up:
            case ExpandDirection.Down:
            {
                var row           = Grid.GetRow(this);
                var rowDefinition = grid.RowDefinitions[row];

                if (_previousMaxLength is null)
                {
                    _previousMaxLength = rowDefinition.MaxHeight;
                }

                _previousActualLength = rowDefinition.ActualHeight;
                AnimateMaxHeight(rowDefinition, rowDefinition.ActualHeight, _headerSiteBorder.ActualHeight, ExpandDuration);

                break;
            }
            }
        }
Exemple #2
0
        private void UpdateWaterMarkMargin()
        {
            if (_watermarkHost is null)
            {
                return;
            }

            var padding = Padding;
            var margin  = new Thickness(padding.Left + 2d, padding.Top, padding.Right + 2d, padding.Bottom);

            _watermarkHost.SetCurrentValue(MarginProperty, margin);
        }
Exemple #3
0
        private void SetVisibiltyForTitleBarElements(bool visible)
        {
            var value = visible ? Visibility.Visible : Visibility.Collapsed;

            titleBar?.SetCurrentValue(VisibilityProperty, value);

            title?.SetCurrentValue(VisibilityProperty, value);
            SetVisibiltyForIcon();

            leftWindowCommands?.SetValue(VisibilityProperty, value);
            rightWindowCommands?.SetValue(VisibilityProperty, value);

            windowButtons?.SetCurrentValue(VisibilityProperty, value);
            SetWindowEvents();
        }
        private void ClearEffect(ContentPresenter presenter)
        {
            if (presenter == null)
            {
                return;
            }

            if (ReferenceEquals(_effectBottomPresenter, presenter))
            {
                _effectBottomPresenter.SetCurrentValue(EffectProperty, null);
                return;
            }

            presenter.SetCurrentValue(EffectProperty, null);
            ClearEffect(presenter.Content as ContentPresenter);
        }