Я пытаюсь собрать все пользовательские атрибуты, размещенные над свойством. Существует несколько атрибутов одного типа, назначенных свойству, но при их сборе результирующая коллекция содержит только первый атрибут определенного типа:
Класс атрибутов
[AttributeUsage(System.AttributeTargets.Property,
AllowMultiple = true)]
public class ConditionAttribute : Attribute{...}
Использование:
[ConditionAttribute("Test1")]
[ConditionAttribute("Test2")]
[ConditionAttribute("Test3")]
public Color BackColor{get; set;}
Теперь при циклическом прохождении всех Props объекта 'value', класс которого содержит Prop "BackColor":
foreach (PropertyDescriptor property in TypeDescriptor.GetProperties(value))
{
foreach (Attribute attribute in property.Attributes)
{ ... }
....
}
свойство коллекции. Атрибуты содержат только ОДИН атрибут типа «ConditionAttribute»: атрибут с «Test1». Остальные игнорируются ;-(
Так что AllowMultiple не работает для атрибутов свойств?
Заранее спасибо
Хенрик