Attribute [Category], [Description]



 아직까지 어트리뷰트를 많이 사용하지 않았다. 그 필요성을 느끼는 단계까지 나의 내공이 부족한 걸까? 아니면 환경이??
모... 불평하거나 위측하지 않으련다.

 CodeProject 에서 자료를 찾다가 남의 소스를 봤는데 희한한게 있었다. Category, Description 어트리뷰트가 바로 그것이다. 남의 코드와, 오픈소스를 많이 봐두면 좋다는 말.. 많이 들었는데 비로서 피부로 느낀다.

 Category, Description 어트리뷰트는 Property에 사용된다. 일반적으로 WinForm 컨트롤을 사용자 환경에 맞게 서브클래싱 할 때 VisualStudio 의 도움을 받을 수 있도록 사용한다.
 
 다음과 같이 Button 컨트롤 클래스를 상속받은 MyButton 클래스를 정의한다.


 프로퍼티를 구현한다.


 MyButton 컨트롤을 폼에 올려 놓았을 때, 컨트롤의 속성창을 보면 기타 라는 항목에 정의한 프로퍼티 목록이 보안다.
솔직히 속성 창에 보이는 것 만으로도 신기했다. 후후..


 속성 창 맨 아래 보면 설명이 나오는데, 프로퍼티에 정의한 XML 주석의 내용이 나올줄 알았다. 너무 쉽게 생각했나?!
아무튼 아무것도 나오지 않는다.
 

 MyButton 에 정의한 프로퍼티에 다음과 같은 어트리뷰트를 추가한다.

Category 어트리뷰트는 속성창에서 해당 프로퍼티가 위치할 항목을 지정한다. 


Description 어트리뷰트는 해당 속성의 출력할 설명을 지정한다.



 이 밖에도 Browsable, DesignerSerializationVisibility 프로퍼티가 사용되어지는 것 같은데 자료 찾기가 좀 어렵다.. 아직 MSDN이 어색하다..

Posted by six605
,