반응형
WPF Application을 사용하면 기능이 풍부하고 커스터마이징이 가능한 컨트롤을 매우 쉽게 만들 수 있는 'Custom Controls'을 만들 수 있다.
Custom controls는 Microsoft에서 제공하는 기본 컨트롤이 사용자의 요구사항을 충족하지 않거나, 타사 컨트롤에 대한 비용을 지불하지 않으려는 경우에 사용할 수 있다.
User Control과 Custom Control의 차이점을 살펴보고, Custom Control 생성 방법에 대하여 설명한다.
1. User Control
User Control은 기본 컨트롤을 합치고 조합하여 재사용 가능한 XAML로 패키징하는 방법을 제공한다.
사용자 컨트롤은 아래와 같은 경우에 사용된다.
- 컨트롤이 기본 컨트롤로 구성된 경우(이미 존재하는 여러 기본 컨트롤의 조합)
- 컨트롤에 테마 지원이 필요하지 않는 경우. User Control은 복잡한 커스터마이징, 컨트롤 템플릿을 지원하지 않으며, 스타일을 지원하지 않음.
- 개발자가 컨트롤을 Code-behind 모델로 사용하는 것을 선호하며, 이벤트 핸들러를 Code-behind로 직접 사용하는 경우
- 어플리케이션 간 컨트롤을 공유하지 않는 경우
2. Custom Control
Custom control은 generic.xaml에 정의된 고유한 스타일과 템플릿을 제공하는 클래스이다.
Custom control은 다음과 같은 경우에 사용된다.
- 컨트롤이 존재하지 않고, 처음부터 만들어야하는 경우
- 특정 시나리오에 맞는 속성 또는 기능을 추가하여 기존 컨트롤에 기능을 확장하거나 추가하는 경우
- 컨트롤이 테마 및 스타일 지정을 지원해야하는 경우
- 어플리케이션 간 컨트롤을 공유하려는 경우
반응형
'프로그래밍 언어 > WPF' 카테고리의 다른 글
[C#] WPF - Round Button 생성 (0) | 2024.04.08 |
---|---|
[C#] WPF - UI의 모든 컨트롤 가져오기 (0) | 2024.01.05 |
[C#] WPF - 토글 스위치(Toggle Switch) 생성 (2) | 2023.12.26 |
[C#] WPF - 특정 프로세스 Focus 여부 판단 방법 (0) | 2023.01.09 |
[C#] WPF - DataGrid의 ForeColor 변경 시 에러 방지 (2) | 2022.10.26 |
댓글