C#:를 사용하는 방법 CategoryAttribute.외관 시설
-
03-07-2019 - |
문제
I have read 트 디자인-시간 특성을 위한 구성 요소.내가 찾는라는 특성 CategoryAttribute.해당 페이지에 그것을 말한다
이 CategoryAttribute 클래스 정의는 다음과 같은 일반적인 카테고리:
다음 목록의 번호를 일반적인 범주가 있습니다.그 중 하나는 예를 들어 모.고 생각했어요.음 사용 [Category.Appearance]
대 [Category("Appearance")]
!하지만 분명히 나는 할 수 없었다?쓰려고 했지만,Intellisense 지 않을 선택 그리고 그것은 없을 컴파일.나는 뭔가요?었다 그것은 어쩌면 이 사람들 속성이 있었는가?하지 않을 경우,그 이유는 무엇입니까?면 그들은 어떻게 사용하나요?
그리고 그렇습니다,나는 올바른 using
액세스 권한을 갖 CategoryAttribute
, 원인 [Category("Whatever")]
작동지 않습니다.지 정말 궁금 사용하는 방법에 정의된 일반적인 범주가 있습니다.
해결책
당신이 볼 수 있듯이에 MSDN 의 게터 제공하지 않습니다.
public static CategoryAttribute Appearance { get; }
사실,여기에 무슨 코드가 다음과 같이 사용하는 반사체:
public static CategoryAttribute Appearance
{
get
{
if (appearance == null)
{
appearance = new CategoryAttribute("Appearance");
}
return appearance;
}
}
그래서 그것을 실행하지 않습니다.
만 사용하여 내가 볼 수 있습니다,그것은 무언가 이것을 좋아한다:
foreach (CategoryAttribute attrib in prop.GetCustomAttributes(typeof(CategoryAttribute), false))
{
bool result = attrib.Equals(CategoryAttribute.Appearance);
}
기본적으로 사용하는 경우 반사하는 보 클래스에서,당신은 쉽게 확인할 수 있는 이 카테고리에 속하는 할 필요없이 문자열을 비교합니다.하지만 당신은 그것을 사용할 수 없는 방식으로 당신은 노력하고 있습니다.
다른 팁
정적 속성에 액세스를 통해 CategoryAttribute.모니다.하지만 특성 시스템에 허용하지 않는 당신을 호출하는 코드에서는 특성 선언하고 나는 생각한 것입니다 왜 그것을 컴파일한다.당신은 아마 정의[Category("외모")].