public override object ProvideValue(IServiceProvider serviceProvider)
        {
            IProvideValueTarget service = serviceProvider.GetService(typeof(IProvideValueTarget)) as IProvideValueTarget;
            if (service != null && service.TargetProperty != null)
            {
                var targetObject = service.TargetObject as FrameworkElement;
                if (targetObject != null)
                {
                    _locInstance = LocalizationInstance.fromTargetProperty(service.TargetProperty);
                    _locInstance.AddTarget(targetObject);

                    var bTarget = new LocBindingTarget(_locInstance, targetObject, Path);

                    return _locInstance.GetValue();
                }
                else
                    return this;
            }
            return null;
        }
        public override object ProvideValue(IServiceProvider serviceProvider)
        {
            IProvideValueTarget service = serviceProvider.GetService(typeof(IProvideValueTarget)) as IProvideValueTarget;

            if (service != null && service.TargetProperty != null)
            {
                var targetObject = service.TargetObject as FrameworkElement;
                if (targetObject != null)
                {
                    _locInstance = LocalizationInstance.fromTargetProperty(service.TargetProperty);
                    _locInstance.AddTarget(targetObject);

                    var bTarget = new LocBindingTarget(_locInstance, targetObject, Path);

                    return(_locInstance.GetValue());
                }
                else
                {
                    return(this);
                }
            }
            return(null);
        }