public object GetValue(IDependencyProperty dp)
        {
            var maybe = ResolveEffectiveStoresValue(dp);

            if (maybe.HasValue)
            {
                return(maybe.Value);
            }

            var metadata = dp.GetMetadata(ownerType);

            return(metadata.DefaultValue);
        }
 public IPropertyMetadata GetMetadata(IDependencyProperty dp)
 {
     return(dp.GetMetadata(this.ownerType));
 }