Color 클래스 'Color 속성을 반복 처리하려고합니다.클래스 속성 반복하기
불행히도 컬렉션에없는 정적 속성이 많은 클래스입니다.
클래스의 속성을 정적 또는 객체 기반으로 반복 할 수 있는지 알고있는 사람이 있습니까?
Color 클래스 'Color 속성을 반복 처리하려고합니다.클래스 속성 반복하기
불행히도 컬렉션에없는 정적 속성이 많은 클래스입니다.
클래스의 속성을 정적 또는 객체 기반으로 반복 할 수 있는지 알고있는 사람이 있습니까?
예, 리플렉션을 사용하여 가능합니다. 특정 색상은 Color struct
의 정적 속성으로 정의됩니다.
PropertyInfo[] colors = typeof(Color).GetProperties(BindingFlags.Static|BindingFlags.Public);
foreach(PropertyInfo pi in colors) {
Color c = (Color)pi.GetValue(null, null);
// do something here with the color
}
은 또한이 코드
http://blog.guymahieu.com/2006/07/11/deep-reflection-of-properties-propertyreflector/
그것은 설정/이름 속성을 가져올 수있는 쉬운 방법을 제공에 관심이있을 수 있습니다. 경우 (pi.PropertyType == 대해서 typeof (컬러)) 에 : 당신이 GetBestMatchingProperty로 보면 당신은 속성을 통해 반복을 찾을거야, 그게 내가 추가 할 Iterating over class properties
전에 게시 된 것과 동일한 방식으로 이루어집니다 Color에 추가되는 새로운 속성에 대한 미래 보장. – ICR