[C#] Control Library 만들 때 TIP
C#에서 UserControl을 ControlLibray로 만들어서 배포하고 싶을 경우가 많습니다.
Project 템플릿을 옆의 그림과 같이 Windows Forms Contol Library 를 선택하고 생성하시면 됩니다.
이렇게 프로젝트를 생성하시고 빌드 후 실행 해보시면 해당 컨트롤이 어떤 속성을 가지고 어떻게 표현되는지를 볼 수 있는 TestContainer를 자동으로 만들어서 해당 Control Library를 로드해줍니다.
아래의 그림이 바로 TestContainer 입니다.
해당 속성을 변경하면 실시간으로 Preview 화면에 반영되어
UserControl 개발을 효율적으로 할 수 있습니다.
오늘 여러분에게 드릴 Tip은 UserControl을 아주 간단하면서 완성도 있게 보일 수 있는 방법입니다.
먼저 오른쪽 그림에서 보시면 Accessibility, Appearance 과 같이 Property Grid에 굵은 표시로 되어 있는 것을 보실 수 있습니다.
이것을 Category라고 합니다.
UserContol을 만들다가 Property를 정의하는 일이 빈번한데, 이 Category를 지정하지 않으면 전부 Misc로 분류됩니다.
그리고 라이브러리인 만큼 그 속성이 어떤 속성인지 설명할 필요도 있습니다.
이것들을 정의하는 방법은 이외로 간단합니다.
바로 프로퍼티를 정의할 때 아래와 같이 정의를 해주면 됩니다.
[Category("MyCategory")] [Browsable(true)] [Description("속성을 설명하는 글")] public bool TestProperty { get; set; }
만약에 아래와 같이 일반적으로 아무런 Category를 명시하지 않으면 Misc로 분류되구요.
public string NonCategory { get; set; }
아래와 같이 Property Grid에 표현되는 것을 확인하실 수 있습니다
참고로 Property가 아닌 경우, private로 정의된 Property인 경우, Brawsable(false)로 선언한 경우
당연히 표시가 안되겠죠?
"프로그래밍 / TIP& Study" 분류의 다른 글
| [TIP] XP, Vista에서 CD/DVD롬이 보이지 않을 경우 (0) | 2009/08/05 |
| [C#] WinForm 에서 Docking 순서 변경하기 (0) | 2009/07/29 |
| [WPF] InkCanvas 사용하기 (0) | 2009/06/29 |
| [C#] 자연스럽게 Pen으로 그리기 (0) | 2009/06/23 |
| [WPF] Canvas의 Width, Height Binding (0) | 2009/06/23 |
| [C#] DateTime으로 7일 후는 어떻게? (0) | 2009/06/23 |
| [C#] string의 byte 길이 구하기 (0) | 2009/06/22 |
| Expression Blend Design View 버그 (0) | 2009/06/07 |


댓글을 달아 주세요