FrameworkElement.RequestedTheme 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
리소스 결정에 UIElement (및 해당 자식 요소)에서 사용되는 UI 테마를 가져오거나 설정합니다. 를 사용하여 RequestedTheme
지정한 UI 테마는 앱 수준 RequestedTheme을 재정의할 수 있습니다.
public:
property ElementTheme RequestedTheme { ElementTheme get(); void set(ElementTheme value); };
ElementTheme RequestedTheme();
void RequestedTheme(ElementTheme value);
public ElementTheme RequestedTheme { get; set; }
var elementTheme = frameworkElement.requestedTheme;
frameworkElement.requestedTheme = elementTheme;
Public Property RequestedTheme As ElementTheme
<uiElement RequestedTheme="elementThemeMemberName" .../>
속성 값
열거형의 값(예 Light
: )입니다.
설명
값을 변경하면 RequestedTheme
요소의 기본 템플릿에 대한 리소스 조회 동작이 효과적으로 변경됩니다. 값을 로 Light
변경하면 템플릿은 ThemeDictionaries 컬렉션에서 "밝게"으로 키 지정된 ResourceDictionary의 값을 사용합니다. 앱의 테마와 다르게 UI 테마를 설정하는 것은 종종 메뉴 및 플라이아웃과 같은 부동 컨트롤에 적합합니다.
런타임에 지정된 요소의 RequestedTheme
속성 값을 변경할 수 있습니다. 이는 앱이 실행되는 동안 설정하려고 하면 예외를 throw하는 Application.RequestedTheme 속성과는 대조적입니다.
FrameworkElement에서 설정한 값은 RequestedTheme
가 설정된 요소 내에 RequestedTheme
중첩된 모든 요소에 상속되지만 명시적으로 다시 설정 RequestedTheme
하여 상속을 재정의할 수 있습니다. 예를 들어 이 XAML 예제에서 부모 StackPanel은 테마를 Light
로 설정하고 해당 값은 첫 번째 TextBlock 자식 요소에 상속되지만 대신 값을 Dark
로 설정하기 때문에 두 번째 TextBlock
요소에는 상속되지 않습니다.
<StackPanel RequestedTheme="Light">
<TextBlock>Text using light theme.</TextBlock>
<TextBlock RequestedTheme="Dark">Text using dark theme.</TextBlock>
</StackPanel>
RequestedTheme
사용자가 고대비 모드에서 실행 중인 경우 속성은 무시됩니다.
고대비 테마 및 XAML 고대비 스타일 샘플을 참조하세요.
참고
Windows에서 RequestedTheme을 ElementTheme.Default 로 설정하면 항상 "어둡게"가 테마가 됩니다.