! 제품 버전을 정확하게 입력해 주세요.
제품 버전이 정확하게 기재되어 있지 않은 경우,
최신 버전을 기준으로 안내 드리므로
더욱 빠르고 명확한 안내를 위해
제품 버전을 정확하게 입력해 주세요!

WPF 컨트롤용 Windows 11 테마 소개 > 블로그 & Tips

본문 바로가기

ComponentOne

블로그 & Tips

WPF 컨트롤용 Windows 11 테마 소개

페이지 정보

작성자 GrapeCity 작성일 2022-10-12 09:51 조회 1,322회 댓글 0건

본문

ComponentOne 2022 v2 릴리스의 새로운 기능은 .NET 6 WPF 응용 프로그램을 위한 '시스템' 테마입니다. 이 테마는 사용자의 OS 설정을 최대한 사용하도록 디자인되었습니다. 여기에는 Windows 10의 날카로운 모서리, Windows 11의 둥근 모서리, Windows 11의 새로운 체크박스 모양, 사용자가 설정한 기타 시스템 색상(예: 고대비 색상)이 포함됩니다. 시스템 테마는 .NET 6의 익숙한 기본 모양에서 약간 벗어납니다.


이러한 테마를 사용해 보시겠어요? 지금 ComponentOne을 다운로드하십시오!

다음은 WPF에 대한 새로운 시스템 테마가 Windows 11에서 나타나는 모양입니다.

기본값


다음은 Windows 11에서 고대비 테마가 나타나는 모양입니다. 다음 고대비 테마의 이름은 Aquatic, Desert, Dusk 및 Night Sky입니다.


테마


img

Aquatic


img

Desert


img

Dusk


img

Nightsky


이러한 테마는 C1.WPF.Themes.System 패키지의 일부로, .NET 6에서 사용할 수 있습니다.


ComponentOne WPF 테마를 적용하는 방법

WPF에서 테마는 매우 쉽게 적용할 수 있습니다. 테마는 전체 응용 프로그램 또는 단일 컨트롤에 적용할 수 있습니다.

MainWindow.xaml.cs에서 테마를 인스턴스화하고 아래 코드에서처럼 Apply 메서드를 사용하여 특정 FrameworkElement(즉, 단일 컨트롤) 또는 전체 창에 테마를 지정할 수 있습니다.

C1.WPF.Themes.C1ThemeSystem myTheme = new C1.WPF.Themes.C1ThemeSystem();
myTheme.Apply(this); // applies theme to entire window

모두 끝났습니다. 또한 테마 태그에서 루트 요소(또는 단일 컨트롤)를 래핑하여 XAML에서 테마를 적용할 수 있습니다.

<c1:C1ThemeSystem xmlns:c1="http://schemas.componentone.com/winfx/2006/xaml">
    <!-- Content -->
</c1:C1ThemeSystem>

ComponentOne 또는 WPF를 처음으로 사용하는 경우 아래 내용을 더 읽어 사용 가능한 모든 사용자 정의 스타일 옵션을 파악하세요.

ComponentOne 2022 v2 업데이트를 지금 다운로드하세요.



WPF 컨트롤 스타일 지정의 배경


ComponentOne WPF Edition에서 컨트롤에 스타일을 지정할 때 여러 가지 옵션이 있습니다.

먼저, WPF 컨트롤은 표준 .NET 컨트롤과 동일한 암시적 스타일 관리를 따릅니다. 즉, 공통 스타일을 정의하여 응용 프로그램 전체에서 다시 사용할 수 있습니다. 따라서 테마를 만들기 위해 다른 접근 방식에 대해 알아볼 필요 없이 ComponentOne WPF 컨트롤의 모양을 쉽게 사용자 정의할 수 있습니다. 예를 들어, FlexGrid를 전부 빨간색으로 만드는 암시적 스타일을 만들 수 있습니다.

<Window.Resources>
    <Style TargetType="c1:FlexGrid">
        <Setter Property="Background" Value="Red" />
    </Style>
</Window.Resources>


둘째, GrapeCity는 컨트롤에 대해 단순히 브러시 속성을 설정할 때 표준 컨트롤이 할 수 있는 작업의 범위를 넘어섰습니다. WPF Datagrid 열 헤더의 스타일을 지정해 본 적 있나요? 컨트롤 템플릿을 수정해야 하기 때문에 그렇게 쉽지는 않을 겁니다. 하지만 ComponentOne WPF 컨트롤을 사용하여 브러시 속성을 설정하여 컨트롤에 완벽하게 스타일을 지정할 수 있습니다. 이는 복잡한 XAML 템플릿을 사용자 정의할 필요 없이 컨트롤의 모든 부분에 수많은 브러시 속성을 적용할 수 있는 ClearStyle 기술 덕분입니다.(자세한 내용은 여기참조해 주세요.)

예를 들어, ColumnHeaderBackground 속성을 단색 브러시로 설정하기만 하면 빠르게 FlexGrid의 열 헤더 스타일을 지정할 수 있고 색상은 계층 전체에 전파됩니다(이 효과는 그라데이션을 사용하는 클래식 테마에서 더욱 인상적임).

img


셋째, GrapeCity는 .NET Framework를 위해 20개가 넘는 전문적인 테마를 제공하고 있으며 2022 v2에 출시된 시스템 테마를 시작으로 .NET 6에 더 많은 테마를 추가하고 있습니다. 테마는 한 줄의 코드로 전체 컨트롤 또는 응용 프로그램에 특정한 모양을 빠르게 적용할 수 있는 아주 좋은 방법입니다.

마지막으로, 테마 및 ClearStyle(수많은 브러시 속성)로 충분하지 않은 경우를 위해 스타일 리소스 및 템플릿을 전부 제공하고 있습니다. 따라서 필요한 경우 필요에 맞춰 사용자 정의할 수 있습니다. 모든 컨트롤 템플릿 및 스리소스 파일은 ComponentOne WPF Edition에 포함되며 Expression Blend 또는 Visual Studio로 가져올 수 있습니다.

이러한 리소스는 C:\Program Files (x86)\ComponentOne\WPF Edition\Resources에서 찾을 수 있습니다.




지금 바로 ComponentOne을 다운로드하여 직접 테스트해보세요!

 
  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기

태그1

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@mescius.com | 전화 : 1670-0583 | 경기도 과천시 과천대로 7길 33, 디테크타워 B동 1107호 메시어스(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 ⓒ 2024 MESCIUS inc. All rights reserved.