private static void ContentChangedCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            var element = d as FrameworkElement;

            if (element != null)
            {
                var adornerLayer = AdornerLayer.GetAdornerLayer(element);

                if (adornerLayer != null)
                {
                    adornerLayer.Add(new NoticeMessageAdorner(element as UIElement));
                }
                else
                {
                    //layer为null,说明还未load过(整个可视化树中没有装饰层的情况不考虑)
                    //在控件的loaded事件内生成装饰件
                    element.Loaded += (s1, e1) => {
                        var adorner = new NoticeMessageAdorner(element);
                        var v       = AdornerLayer.GetAdornerLayer(element);
                        if (v != null)
                        {
                            v.Add(adorner);
                        }
                    };
                }
            }
        }
        private static void IsOpenChangedCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            NoticeMessageAdorner adorner = NoticeMessageAdorner.GetAdorner(d);

            if (adorner == null)
            {
                return;
            }

            adorner.message.Duration     = NoticeMessageAdorner.GetDuration(d);
            adorner.message.CornerRadius = NoticeMessageAdorner.GetCornerRadius(d);
            adorner.message.Content      = NoticeMessageAdorner.GetContent(d);
            adorner.message.Background   = NoticeMessageAdorner.GetBackground(d);
            adorner.message.MessageType  = NoticeMessageAdorner.GetMessageType(d);
            adorner.message.SetBinding(NoticeMessage.IsShowProperty, new Binding()
            {
                Path   = new PropertyPath("."),
                Source = (bool)e.NewValue,
                Mode   = BindingMode.TwoWay
            });
        }