public IDependencyPropertyDescriptor GetDependencyPropertyDescriptor(string name, IDotNetType ownerType, IDotNetType targetType)
        {
            Argument.IsNotNull(() => ownerType);

            if (ownerType is RuntimeType runtimeType)
            {
                return(new RuntimeTypeDependencyPropertyDescriptor(runtimeType.Type, name));
            }

            if (ownerType is UnresolvableType)
            {
                return(new UnresolvableDependencyPropertyDescriptor());
            }

            throw new ArgumentException("Invalid type: " + ownerType.GetType());
        }
Beispiel #2
0
        public IDependencyPropertyDescriptor GetDependencyPropertyDescriptor(string name, IDotNetType ownerType, IDotNetType targetType)
        {
            if (ownerType == null)
            {
                throw new ArgumentNullException("ownerType");
            }

            if (ownerType is NRType)
            {
                return(new NRTypeDependencyPropertyDescriptor(((NRType)ownerType).Type, name));
            }
            if (ownerType is UnresolvableType)
            {
                return(new UnresolvableDependencyPropertyDescriptor());
            }

            throw new ArgumentException("Invalid IType: " + ownerType.GetType());
        }