public IDependencyProperty RegisterAttached(string name, Type propertyType, Type ownerType, IPropertyMetadata defaultMetadata)
        {
            var dp = new AttachedDependencyProperty(name, propertyType, ownerType, defaultMetadata);

            AddToRegistry(ownerType, dp);
            return(dp);
        }
        public IDependencyPropertyKey RegisterAttachedReadOnly(string name, Type propertyType, Type ownerType, IPropertyMetadata defaultMetadata)
        {
            var dp = new AttachedDependencyProperty(name, propertyType, ownerType, defaultMetadata);

            AddToRegistry(ownerType, dp);
            var key = dp.MakeReadOnly();

            return(key);
        }