수색…


통사론

  • C # : Application.Current.Resources [ "yourColorKey"]
  • Xaml : {ThemeResource yourColorKey}

매개 변수

매개 변수 목적
yourColorKey Color 객체를 다시 얻기 위해주는 키. 그것은 C #과 Xaml 사이에 다릅니다.

비고

UWP를 사용하면 Windows 10의 장점을 완벽하게 제어 할 수 있습니다. 이러한 장점 중 일부는 액센트 색상이나 어두운 / 밝은 테마와 같이 그래픽으로 나타납니다.

이 기능과 호환되도록 앱을 준비하려면 프로그램이 실행되는 OS의 액센트 색상 또는 사용자의 테마 선택에 따라 UWP에서 사전 색상이 많이 구현되었습니다.

이 작업에는 두 가지 "방법"이 있습니다.

  • Xaml에서 직접 Color = {ThemeResource x} 속성 (또는 BorderBrush, Background 등과 같이 Brush 를 값으로 사용하는 특성)을 사용하여

  • C # Code Behind에서는 현재 응용 프로그램의 Resource 디렉토리에서 색상을 검색합니다. 이렇게하면 Color 객체가 생기므로 Xaml에서 참조한 객체의 Color 속성에 넣으려면 다음과 같이 새 브러시를 만들어야합니다.

new SolidColorBrush(Application.Current.Resources["yourColorKey"])

C #의 색상 키에 대한 참조는 다음을 참조하십시오.

https://msdn.microsoft.com/windows/uwp/controls-and-patterns/xaml-theme-resources

Xaml의 테마 리소스에 대한 액세스

MyExampleFile.xaml의 스 니펫

<TextBlock Foreground="{ThemeResource SystemControlBackgroundAccentBrush}"
         Text="This is a colored textbox that use the Accent color of your Windows 10"/>

<TextBlock Foreground="{ThemeResource SystemControlBackgroundBaseHighBrush}"
         Text="This is a colored textbox that use a color that is readable in both Light and Dark theme"/>

C #의 테마 리소스에 대한 액세스

MyExampleFile.xaml의 스 니펫

<TextBlock x:Name="MyTextBlock"
         Text="This is a TextBlock colored from the code behind"/>

MyExampleFile.xaml.cs의 스 니펫

    // We use the application's Resource dictionary to get the current Accent of your Windows 10
    MyTextBlock.Color = new SolidColorBrush(Application.Current.Resources["SystemAccentColor"]);


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow