다음을 통해 공유


ResourceDictionary 클래스

정의

구성 요소 및 WPF 애플리케이션의 다른 요소에서 사용하는 WPF 리소스를 포함하는 해시 테이블/사전 구현을 제공합니다.

public ref class ResourceDictionary : System::Collections::IDictionary, System::ComponentModel::ISupportInitialize, System::Windows::Markup::INameScope, System::Windows::Markup::IUriContext
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
public class ResourceDictionary : System.Collections.IDictionary, System.ComponentModel.ISupportInitialize, System.Windows.Markup.INameScope, System.Windows.Markup.IUriContext
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
[System.Windows.Markup.Ambient]
[System.Windows.Markup.UsableDuringInitialization(true)]
public class ResourceDictionary : System.Collections.IDictionary, System.ComponentModel.ISupportInitialize, System.Windows.Markup.INameScope, System.Windows.Markup.IUriContext
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
type ResourceDictionary = class
    interface IDictionary
    interface ICollection
    interface IEnumerable
    interface INameScope
    interface ISupportInitialize
    interface IUriContext
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
[<System.Windows.Markup.Ambient>]
[<System.Windows.Markup.UsableDuringInitialization(true)>]
type ResourceDictionary = class
    interface IDictionary
    interface ICollection
    interface IEnumerable
    interface ISupportInitialize
    interface IUriContext
    interface INameScope
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
[<System.Windows.Markup.Ambient>]
[<System.Windows.Markup.UsableDuringInitialization(true)>]
type ResourceDictionary = class
    interface ICollection
    interface IEnumerable
    interface IDictionary
    interface ISupportInitialize
    interface INameScope
    interface IUriContext
Public Class ResourceDictionary
Implements IDictionary, INameScope, ISupportInitialize, IUriContext
상속
ResourceDictionary
파생
특성
구현

설명

XAML 로더에서 ResourceDictionary 애플리케이션 코드를 로드할 때 항목이 즉시 처리되지 않습니다. 대신 개체 ResourceDictionary 로 유지되고 개별 값은 특별히 요청된 경우에만 처리됩니다.

클래스는 ResourceDictionary .에서 DictionaryBase파생되지 않습니다. 대신 클래스는 ResourceDictionary 내부적으로 구현 IDictionary 하지만 사용합니다 Hashtable .

XAML(Extensible Application Markup Language) ResourceDictionary 에서 클래스는 일반적으로 속성 요소 구문에 제공된 경우 여러 Resources 속성의 개체 요소 값인 암시적 컬렉션 요소입니다. XAML의 암시적 컬렉션에 대한 자세한 내용은 XAML 구문 세부 정보를 참조하세요. 병합된 사전을 지정하려는 경우는 예외입니다. 자세한 내용은 병합된 리소스 사전을 참조하세요.

또 다른 가능한 XAML 사용은 리소스 사전을 불연속 XAML 파일로 선언하고 런타임 Load 에 로드하거나(완전 신뢰) 프로젝트에 리소스 또는 느슨한 파일로 포함하는 것입니다. 이 경우 ResourceDictionary XAML의 루트 요소 역할을 하는 개체 요소로 선언할 수 있습니다. 루트 요소로 사용하려는 경우 적절한 XML 네임스페이스 값(WPF 네임스페이스 및 일반적으로 x: XAML 네임스페이스의 경우)을 요소에 ResourceDictionary 매핑해야 합니다. 그런 다음 각각 x:Key 값을 사용하여 리소스를 정의하는 자식 요소를 추가할 수 있습니다.

XAML 암시적 컬렉션 사용

<object>
  <object.resourcesProperty>
    oneOrMoreResources
  </object.resourcesProperty>
</object>

XAML 값

resourcesProperty 해당 속성의 값 형식이 있는 속성 요소를 지정하는 속성입니다 ResourceDictionary. 일반적으로 이 속성은 Resources 애플리케이션 리소스의 경우 또는 FrameworkContentElementApplication 애플리케이션 리소스의 속성 FrameworkElement 입니다.

oneOrMoreResources 개체 요소로 지정된 하나 이상의 리소스입니다. 지정하는 각 리소스에는 x:Key 지시문 이 할당되어 있어야 합니다.

생성자

Name Description
ResourceDictionary()

ResourceDictionary 클래스의 새 인스턴스를 초기화합니다.

속성

Name Description
Count

기본 ResourceDictionary에 있는 항목 수를 가져옵니다.

DeferrableContent

이 리소스 사전에 대한 지연 가능한 콘텐츠를 가져오거나 설정합니다.

InvalidatesImplicitDataTemplateResources

개체에서 발생한 ResourceDictionary 무효화로 인해 ContentPresenter 개체가 선택한 템플릿을 다시 평가하는지 여부를 나타내는 값을 가져오거나 설정합니다. 암시적 데이터 템플릿 리소스가 변경되면 무효화가 발생합니다.

IsFixedSize

고정 ResourceDictionary 크기인지 여부를 가져옵니다.

IsReadOnly

읽기 ResourceDictionary 전용인지 여부를 가져옵니다.

Item[Object]

지정된 키와 연결된 값을 가져오거나 설정합니다.

Keys

ResourceDictionary에 포함된 모든 키의 컬렉션을 가져옵니다.

MergedDictionaries

병합된 사전의 ResourceDictionary 다양한 리소스 사전을 구성하는 사전의 컬렉션을 가져옵니다.

Source

리소스를 로드할 URI(Uniform Resource Identifier)를 가져오거나 설정합니다.

Values

ResourceDictionary키에 포함된 키와 연결된 모든 값의 컬렉션을 가져옵니다.

메서드

Name Description
Add(Object, Object)

키별로 리소스를 추가합니다 ResourceDictionary.

BeginInit()

ResourceDictionary에 대한 초기화 단계를 시작합니다.

Clear()

기본 ResourceDictionary의 모든 키(및 값)를 지웁니다. 이렇게 하면 병합된 사전 항목이 지워지지 않습니다.

Contains(Object)

지정된 키를 가진 요소가 포함되어 있는지 여부를 ResourceDictionary 확인합니다.

CopyTo(DictionaryEntry[], Int32)

지정된 인덱스에서 ResourceDictionary 요소를 1차원 DictionaryEntry 으로 복사합니다.

EndInit()

초기화 단계를 종료하고 초기화 단계에서 키에 대한 모든 변경 내용을 처리할 수 있도록 이전 트리를 무효화합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
FindName(String)

이 사전 구현에서 지원되지 않습니다.

GetEnumerator()

IDictionaryEnumerator 반복하는 데 사용할 수 있는 값을 반환합니다 ResourceDictionary.

GetHashCode()

기본 해시 함수로 사용됩니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
OnGettingValue(Object, Object, Boolean)

리소스에 ResourceDictionary 대한 요청을 받을 때 발생합니다.

RegisterName(String, Object)

이 사전 구현에서 지원되지 않습니다.

Remove(Object)

기본 사전에서 지정된 키가 있는 항목을 제거합니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
UnregisterName(String)

이 사전 구현에서 지원되지 않습니다.

명시적 인터페이스 구현

Name Description
ICollection.CopyTo(Array, Int32)

이 멤버에 대한 설명은 을 참조하세요 CopyTo(Array, Int32).

ICollection.IsSynchronized

이 멤버에 대한 설명은 을 참조하세요 IsSynchronized.

ICollection.SyncRoot

이 멤버에 대한 설명은 을 참조하세요 SyncRoot.

IEnumerable.GetEnumerator()

이 멤버에 대한 설명은 을 참조하세요 GetEnumerator().

IUriContext.BaseUri

이 멤버에 대한 설명은 을 참조하세요 BaseUri.

확장명 메서드

Name Description
AsParallel(IEnumerable)

쿼리의 병렬 처리를 사용하도록 설정합니다.

AsQueryable(IEnumerable)

IEnumerable IQueryable변환합니다.

Cast<TResult>(IEnumerable)

IEnumerable 요소를 지정된 형식으로 캐스팅합니다.

OfType<TResult>(IEnumerable)

지정된 형식에 따라 IEnumerable 요소를 필터링합니다.

적용 대상

추가 정보