다음을 통해 공유


Application.Resources 속성

정의

스타일, 템플릿 및 브러시와 같은 애플리케이션 범위 리소스의 컬렉션을 가져옵니다.

ResourceDictionary Resources();

void Resources(ResourceDictionary value);
public ResourceDictionary Resources { get; set; }
var resourceDictionary = application.resources;
application.resources = resourceDictionary;
Public Property Resources As ResourceDictionary

속성 값

애플리케이션 범위 리소스가 0개 이상 포함된 ResourceDictionary 개체입니다.

예제

이 예제에서는 앱별 리소스를 선언하는 방법을 보여 줍니다(일반적인 변환기 클래스 인스턴스를 만듭니다). 그런 다음 ResourceDictionary 요소가 포함된 Application.MergedDictionaries 속성 요소를 추가합니다. 각 요소는 URI별 XAML 파일을 Source로 참조합니다.

<Application.Resources>
    <ResourceDictionary>
      <common:BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/> 
      <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="rd1.xaml" />
        <ResourceDictionary Source="rd2.xaml" />
      </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
  </Application.Resources>

설명

Windows 런타임 리소스 사전 모델은 Windows Presentation Foundation(WPF) 또는 .NET MAUI를 사용하여 애플리케이션을 만든 경우 익숙할 수 있는 많은 XAML 리소스 개념을 지원합니다. 자세한 내용은 ResourceDictionary 및 XAML 리소스 참조를 확인하세요.

속성 요소를 채우는 Application.ResourcesResourceDictionary에서 정의하는 리소스는 앱의 모든 페이지에서 검색할 수 있습니다. 이는 앱의 많은 페이지가 모두 동일한 리소스를 사용하는 경우에 유리합니다. 예를 들어 앱의 UI에서 색 구성표에 사용하는 SolidColorBrush 리소스가 있고 해당 색이 대부분의 페이지에서 사용되는 경우 에서 SolidColorBrushApplication.Resources를 선언하는 것이 좋습니다.

에 리소스를 Application.Resources추가하면 기존 ResourceDictionary.MergedResources의 앞이나 뒤를 추가합니다. XAML 규칙은 속성 요소 태그의 양쪽에 콘텐츠를 배치할 수 없습니다. 자세한 내용은 XAML 구문 가이드를 참조하세요.

앱 전반에 걸쳐 여러 페이지의 리소스를 사용하는 경우 App.xaml에 저장하는 것이 가장 좋으며, 중복을 방지합니다. 그러나 App.xaml은 앱 시작 시 구문 분석되므로 하나의 페이지(초기 페이지가 아닌 경우)에서만 사용되는 리소스는 해당 페이지의 로컬 리소스에 두어야 합니다. 자세한 내용은 XAML 태그 최적화를 참조하세요.

적용 대상

추가 정보