FrameworkContentElement.Resources 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
현재 로컬로 정의된 리소스 사전을 가져오거나 설정합니다.
public:
property System::Windows::ResourceDictionary ^ Resources { System::Windows::ResourceDictionary ^ get(); void set(System::Windows::ResourceDictionary ^ value); };
public System.Windows.ResourceDictionary Resources { get; set; }
[System.Windows.Markup.Ambient]
public System.Windows.ResourceDictionary Resources { get; set; }
member this.Resources : System.Windows.ResourceDictionary with get, set
[<System.Windows.Markup.Ambient>]
member this.Resources : System.Windows.ResourceDictionary with get, set
Public Property Resources As ResourceDictionary
속성 값
현재 로컬로 정의된 리소스입니다. 이 사전은 리소스 사전으로, 키를 사용하여 사전 내의 리소스에 액세스합니다.
- 특성
예제
다음 예제에서는 Resources 루트 요소에 컬렉션을 FlowDocument 설정합니다. FlowDocument 일반적인 선택은 소수의 하나 이므로 FrameworkContentElement 이해 되는 루트 요소 및 리소스 클래스는 페이지 루트 또는 애플리케이션과 같이 이러한 더 높은 수준에서 일반적으로 저장 됩니다.
<FlowDocument
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class=" SDKSample.Page2">
<FlowDocument.Resources>
<Style TargetType="{x:Type Paragraph}" x:Key="BluePara">
<Setter Property="Background" Value="Blue"/>
<Setter Property="FontSize" Value="18"/>
<Setter Property="Foreground" Value="LightBlue"/>
<Setter Property="FontFamily" Value="Trebuchet MS"/>
</Style>
</FlowDocument.Resources>
<Paragraph Style="{StaticResource BluePara}">Lorem ipsum etc.</Paragraph>
</FlowDocument>
설명
XAML(Extensible Application Markup Language)에서 완전히 또는 부분적으로 정의할 수 있는 리소스 사전은 일반적으로 속성 요소로 생성되며 일반적으로 개별 페이지 또는 애플리케이션의 루트 요소에 있습니다. 이 수준에서 리소스 사전 배치 쉽게 페이지의 개별 자식 요소 (또는 애플리케이션의 경우에는 페이지)를 찾을 수 있습니다. 대부분의 애플리케이션 시나리오에서 스타일 리소스 사전 내의 개체 요소로 정의 되어 권장 또는 전체 스타일 리소스는 자체 포함 될 수 있도록 외부 리소스로 정의 됩니다 (이 통해 별도 디자이너 책임을 편집 해야 하는 물리적 파일을 구분 하 여 개발자의 책임).
이 속성은 해당 요소 내에서 직접 선언된 리소스 사전만 반환합니다. 이는 자식 요소가 각 부모 요소에 정의된 리소스에 액세스하여 재귀적으로 위쪽으로 검색할 수 있는 실제 리소스 조회 프로세스와 다릅니다.
리소스는 컬렉션 내의 코드에서 참조할 수도 있지만 XAML에서 만든 리소스는 사전을 선언하는 요소에 의해 가 Loaded 발생할 때까지 확실히 액세스할 수 없습니다. 실제로 리소스는 비동기적으로 구문 분석되며, 이벤트조차도 Loaded XAML 정의 리소스를 참조할 수 있다는 보장이 아닙니다. 이러한 이유로 일반적으로 런타임 코드의 일부로 또는 특성 값에 대한 스타일 또는 리소스 확장 참조와 같은 다른 XAML 기술을 통해서만 XAML 정의 리소스에 액세스해야 합니다. 코드를 통해 리소스에 액세스하는 경우 기본적으로 XAML에서 만든 DynamicResource 참조와 동일합니다.
기본 ResourceDictionary 은 코드를 사용하여 컬렉션 내에서 리소스를 추가, 제거 또는 쿼리하는 데 필요한 메서드를 지원합니다. 속성은 Resources 요소의 리소스 컬렉션을 새 또는 다른 ResourceDictionary로 완전히 바꾸는 시나리오를 지원하도록 설정할 수 있습니다.
표시된 XAML 구문에는 에 대한 ResourceDictionary요소가 포함되지 않습니다. 암시적 컬렉션 구문의 예입니다. 컬렉션 요소를 나타내는 태그를 생략할 수 있습니다. 컬렉션에 항목으로 추가되는 요소가 대신 지정됩니다. 암시적 컬렉션 및 XAML에 대한 자세한 내용은 XAML 구문 자세히를 참조하세요. 가 요소로 명시적으로 지정되는 한 가지 경우 ResourceDictionary 는 병합된 사전을 도입하는 경우이며, 이 경우 일반적으로 해당 ResourceDictionary에 대한 자식 요소가 없습니다. 자세한 내용은 병합된 리소스 사전을 참조하세요.
XAML 속성 요소 사용
<object>
<object.Resources>
oneOrMoreResourceElements
</object.Resources>
</object>
XAML 값
oneOrMoreResourceElements
각각 리소스를 정의하는 하나 이상의 개체 요소입니다. 각 내의 각 ResourceDictionary 리소스 속성 요소에는 x:Key 지시문에 대한 고유한 값이 있어야 합니다. 이 값은 에서 ResourceDictionary값을 검색할 때 고유 키 역할을 합니다.
적용 대상
추가 정보
.NET