Example #1
0
        public Task <IValueProvider> BindAsync(object value, ValueBindingContext context)
        {
            IAttributeBindingSource binding = value as IAttributeBindingSource;

            if (binding == null)
            {
                throw new InvalidOperationException("Unable to convert value to IAttributeBindingSource.");
            }

            return(BindAsync(binding, context));
        }
Example #2
0
        /// <summary>
        /// Constructs a new instance.
        /// </summary>
        /// <param name="bindingSource">The binding source.</param>
        internal Binder(IAttributeBindingSource bindingSource)
        {
            _bindingSource = bindingSource;

            // take a snapshot of the binding data
            // any additional binding data added will be applied
            // on bind
            _bindingData = new Dictionary <string, object>(StringComparer.OrdinalIgnoreCase);
            if (bindingSource.AmbientBindingContext.BindingData != null)
            {
                foreach (var pair in bindingSource.AmbientBindingContext.BindingData)
                {
                    _bindingData[pair.Key] = pair.Value;
                }
            }
        }
Example #3
0
        private Task <IValueProvider> BindAsync(IAttributeBindingSource binding, ValueBindingContext context)
        {
            IValueProvider provider = new RuntimeValueProvider(binding, _parameter.ParameterType);

            return(Task.FromResult(provider));
        }
Example #4
0
 private Task<IValueProvider> BindAsync(IAttributeBindingSource binding, ValueBindingContext context)
 {
     IValueProvider provider = new RuntimeValueProvider(binding, _parameter.ParameterType);
     return Task.FromResult(provider);
 }
Example #5
0
 public RuntimeValueProvider(IAttributeBindingSource bindingSource)
 {
     _bindingSource = bindingSource;
 }
 public RuntimeValueProvider(IAttributeBindingSource bindingSource, Type parameterType)
 {
     _binder        = new Binder(bindingSource);
     _parameterType = parameterType;
 }
Example #7
0
 public RuntimeValueProvider(IAttributeBindingSource bindingSource, Type parameterType)
 {
     _binder = new Binder(bindingSource);
     _parameterType = parameterType;
 }