반응형
특정 속성을 표시 한 모든 속성 가져 오기 오기
거기에 클래스와 속성이 있습니다. 일부 속성은 속성으로 표시 될 수 있습니다 ( LocalizedDisplayName
에서 상 속됨 DisplayNameAttribute
). 이 클래스의 모든 속성을 얻는 방법입니다.
private void FillAttribute()
{
Type type = typeof (NormDoc);
PropertyInfo[] propertyInfos = type.GetProperties();
foreach (var propertyInfo in propertyInfos)
{
...
}
}
목록 상자 LocalizedDisplayName
에 속성 값 을 표시 하고 표시 하는 목록 상자에 클래스의 속성을 추가하고 싶습니다 . 어떻게 할 수 있습니까?
편집
은 LocalizedDisplayNameAttribute입니다.
public class LocalizedDisplayNameAttribute : DisplayNameAttribute
{
public LocalizedDisplayNameAttribute(string resourceId)
: base(GetMessageFromResource(resourceId))
{ }
private static string GetMessageFromResource(string resourceId)
{
var test =Thread.CurrentThread.CurrentCulture;
ResourceManager manager = new ResourceManager("EArchive.Data.Resources.DataResource", Assembly.GetExecutingAssembly());
return manager.GetString(resourceId);
}
}
리소스 파일에서 싶습니다. 감사합니다.
사용하는 것이 가장 기본적인 것 입니다.IsDefined
var properties = type.GetProperties()
.Where(prop => prop.IsDefined(typeof(LocalizedDisplayNameAttribute), false));
편집 : 자체 값을 얻으려면 다음을 사용합니다.
var attributes = (LocalizedDisplayNameAttribute[])
prop.GetCustomAttributes(typeof(LocalizedDisplayNameAttribute), false);
참고 URL : https://stackoverflow.com/questions/7305787/get-all-properties-which-marked-certain-attribute
반응형
'ProgramingTip' 카테고리의 다른 글
복수의 염색체 생성? (0) | 2020.10.24 |
---|---|
org.hibernate.PersistentObjectException : 분리 된 지속가 지속 전달. (0) | 2020.10.24 |
Knockout.js를 사용하여 특정 위치에서 ObservableArray 항목을 추가 / 삽입하는 방법 (0) | 2020.10.24 |
두 개의 다른 파일 보관 git diff (0) | 2020.10.24 |
System.Array.CopyTo ()와 System.Array.Clone ()의 차이점 (0) | 2020.10.24 |