Exemplo n.º 1
0
        public static void ActivateShadows(this Control control)
        {
            var _b = ShadowDecorator.GetVisible(control);

            ShadowDecorator.SetVisible(control, !_b);
            ShadowDecorator.SetVisible(control, _b);
        }
Exemplo n.º 2
0
        private void Detach(Control control)
        {
            var layer = AdornerLayer.GetAdornerLayer(control);

            var br = ShadowDecorator.GetCurrent(control);

            if (br != null)//& layer != null
            {
                control.ClearValue(AdornerLayer.AdornedElementProperty);
                control.ClearValue(ShadowDecorator.CurrentProperty);
                layer.Children.Remove(br);
                Debug.WriteLine("detach");
            }
        }
Exemplo n.º 3
0
        private void Attach(Control control)
        {
            var bx = ShadowDecorator.GetShadow(control);
            var cr = ShadowDecorator.GetShadowCornerRadius(control);
            var br = new Border {
                BoxShadow = bx, CornerRadius = cr
            };                                                       // Width = control.Width - 20, Height = control.DesiredSize.Height - 20

            var adornerLayer = AdornerLayer.GetAdornerLayer(control);

            //if(adornerLayer != null)
            //{

            ShadowDecorator.SetCurrent(control, br);
            AdornerLayer.SetAdornedElement(br, control);
            adornerLayer.Children.Add(br);
            br.PropertyChanged += (s, e) => { br.Clip = null; };
            Debug.WriteLine("attached");
            //};
            //}
        }