public override void RemoveBehavior(object target)
        {
            DependencyObject targetDo = target as DependencyObject;

            if (targetDo != null)
            {
                targetDo.SetValue(
                    PropertyBindingBehavior.GetDependencyProperty(target, this.PropertyName),
                    DependencyProperty.UnsetValue);
            }
        }
        public override void AddBehavior(object target, AuthorizationSource source)
        {
            DependencyObject targetDo = target as DependencyObject;

            if (targetDo != null)
            {
                BindingOperations.SetBinding(
                    targetDo,
                    PropertyBindingBehavior.GetDependencyProperty(target, this.PropertyName),
                    new Binding("Result")
                {
                    Source = source, Converter = new AuthorizationConverter()
                });
            }
        }