protected virtual IList <XamlMember> LookupDependsOn() { if (!AreAttributesAvailable) { return(null); } List <string> doPropertyNames = _reflector.GetAllAttributeContents <string>(typeof(DependsOnAttribute)); if (doPropertyNames == null || doPropertyNames.Count == 0) { return(null); } List <XamlMember> result = new List <XamlMember>(); foreach (var name in doPropertyNames) { XamlMember member = _declaringType.GetMember(name); // Normally we want to throw if property lookup fails to return anything // but here we can not throw because v3.0 does not if (member != null) { result.Add(member); } } return(XamlType.GetReadOnly(result)); }