Example #1
0
        protected override IEnumerable <Member> LookupDependencies()
        {
            var underlyingType      = DeclaringType.UnderlyingType;
            var dependsOnAttributes = underlyingType.GetRuntimeProperty(Name)?.GetCustomAttributes <DependsOnAttribute>();

            return(dependsOnAttributes.Select(attr => DeclaringType.GetMember(attr.Name)));
        }
Example #2
0
        protected virtual IEnumerable <Member> LookupDependencies()
        {
            var metadata = FeatureProvider.GetMetadata(DeclaringType.UnderlyingType);

            if (metadata != null)
            {
                var namesOfPropsWeDependOn = metadata.GetMemberDependencies(this.Name);
                return(namesOfPropsWeDependOn.Select(s => DeclaringType.GetMember(s)));
            }
            else
            {
                return(new List <Member>());
            }
        }
Example #3
0
        protected virtual IEnumerable <XamlMember> LookupDependencies()
        {
            var underlyingType = DeclaringType.UnderlyingType;
            var metadata       = TypeRepository.GetMetadata(underlyingType);

            if (metadata != null)
            {
                var namesOfPropsWeDependOn = metadata.GetMemberDependencies(this.Name);
                return(namesOfPropsWeDependOn.Select(s => DeclaringType.GetMember(s)));
            }
            else
            {
                return(new List <XamlMember>());
            }
        }
Example #4
0
        protected override IList <XamlMember> LookupDependsOn()
        {
            if (_dependsOn == null)
            {
                var attrib = UnderlyingMember.GetCustomAttribute <DependsOnAttribute>(true);

                if (attrib != null)
                {
                    var member = DeclaringType.GetMember(attrib.Name);

                    _dependsOn = new XamlMember[] { member };
                }
                else
                {
                    _dependsOn = base.LookupDependsOn();
                }
            }

            return(_dependsOn);
        }