반응형
기본 스타일에서 스타일 상속
제 프로젝트에는 텍스트 상자의 커스텀 스타일이 있습니다.다음과 같이 정의됩니다.
<Style TargetType="TextBox"/>
따라서 기본적으로 모든 텍스트 상자 하위 컨트롤에 적용됩니다.
기본 스타일을 기반으로 다른 스타일을 만들어야 합니다.그러나 BasedOn 속성에서 새 스타일이 기본 스타일을 사용하도록 지정하려면 어떻게 해야 합니까?
확장할 컨트롤 유형을 사용합니다.
BasedOn="{StaticResource {x:Type TextBox}}"
완전한 예:
<Style x:Key="NamedStyle" TargetType="TextBox" BasedOn="{StaticResource {x:Type TextBox}}">
<Setter property="Opacity" value="0.5" />
</Style>
@Aphelion은 정답을 가지고 있다.아이템이 정의되어 있는 순서를 추가하고 싶다.ResourceDictionary문제.
슬라이더의 기본 스타일을 재정의하고 다른 슬라이더 스타일을 기반으로 하려면 재정의 스타일 뒤에 "기준" 슬라이더를 선언해야 합니다.
예를 들어, 다음과 같이 합니다.
<Style x:Key="BlueSlider" TargetType="{x:Type Slider}" BasedOn="{StaticResource {x:Type Slider}}">
<Setter Property="Background" Value="Blue"/>
</Style>
<Style TargetType="{x:Type Slider}">
<Setter Property="Foreground" Value="Yellow"/>
</Style>
BlueSlider는, 디폴트(흰색)의 전경에 파란색 배경으로 합니다.
하지만 이렇게 하면:
<Style TargetType="{x:Type Slider}">
<Setter Property="Foreground" Value="Yellow"/>
</Style>
<Style x:Key="BlueSlider" TargetType="{x:Type Slider}" BasedOn="{StaticResource {x:Type Slider}}">
<Setter Property="Background" Value="Blue"/>
</Style>
BlueSlider파란색 배경과 노란색 전경이 있습니다.
언급URL : https://stackoverflow.com/questions/11581475/inherit-style-from-default-style
반응형
'source' 카테고리의 다른 글
| 커밋 메시지로 Git 저장소를 검색하는 방법 (0) | 2023.04.19 |
|---|---|
| SwiftUI - 뷰에 하드코딩된 네비게이션을 피하는 방법 (0) | 2023.04.19 |
| XAML에서 간단한 하이퍼링크를 만드는 방법 (0) | 2023.04.19 |
| NSAray를 통해 어떻게 반복해야 하나요? (0) | 2023.04.19 |
| Microsoft 의 사용법.Office.Interop.MS Office가 설치되지 않은 머신에서 뛰어난 성능을 발휘하시겠습니까? (0) | 2023.04.19 |