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 內部。

在 Extensible Application Markup Language (XAML) 中,類別 ResourceDictionary 通常是在屬性專案語法中指定時,為數 Resources 個屬性的物件專案值隱含集合專案。 如需 XAML 中隱含集合的詳細資訊,請參閱 XAML 語法詳細資料。 例外狀況是當您想要指定合併的字典時;如需詳細資訊,請參閱 合併的資源字典

另一個可能的 XAML 使用方式是將資源字典宣告為離散 XAML 檔案,並在執行時間載入 Load ,或將其包含在 (完全信任) 專案作為資源或鬆散檔案。 在此情況下, ResourceDictionary 可以宣告為物件專案,做為 XAML 的根項目。 如果您打算使用 XAML 命名空間做為根項目,您必須將 WPF 命名空間的預設值對應 (適當的 XML 命名空間值,而且通常 x: 針對 XAML 命名空間) 對應至 ResourceDictionary 元素。 然後,您可以新增定義資源的子項目,每個專案都有 x:Key 值。

XAML 隱含集合用法

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

XAML 值

resourcesProperty
指定屬性專案的屬性,其中該屬性的實值型別為 ResourceDictionary 。 一般而言,這是 Resources 或 的 FrameworkContentElement 屬性 FrameworkElement ,或在 Application 應用程式資源案例中。

oneOrMoreResources
指定為物件元素的一或多個資源。 您指定的每個資源都必須指派 x:Key 指示詞

建構函式

ResourceDictionary()

初始化 ResourceDictionary 類別的新執行個體。

屬性

Count

取得基本 ResourceDictionary 中的項目數。

DeferrableContent

取得或設定這個資源字典的可延遲內容。

InvalidatesImplicitDataTemplateResources

取得或設定值,指出是否因 ResourceDictionary 物件讓 ContentPresenter 物件重新評估其選擇範本而引發失效。 當隱含的資料範本資源變更時,就會造成失效。

IsFixedSize

取得這個 ResourceDictionary 是否為固定大小。

IsReadOnly

取得這個 ResourceDictionary 是否為唯讀。

Item[Object]

取得或設定與指定索引鍵相關聯的值。

Keys

取得這個 ResourceDictionary 中包含的所有索引鍵的集合。

MergedDictionaries

取得 ResourceDictionary 字典的集合,這些字典在合併字典中組成了各種資源字典。

Source

取得或設定要從中載入資源的的統一資源識別項 (URI)。

Values

取得與這個 ResourceDictionary 中包含之索引鍵相關聯的所有值的集合。

方法

Add(Object, Object)

將資源依索引鍵加入這個 ResourceDictionary

BeginInit()

開始這個 ResourceDictionary 的初始化階段。

Clear()

清除基本 ResourceDictionary 中的所有索引鍵及值。 這不會清除任何合併的字典項目。

Contains(Object)

判斷 ResourceDictionary 是否包含具有指定之索引鍵的項目。

CopyTo(DictionaryEntry[], Int32)

ResourceDictionary 元素複製到指定索引的一維 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)

此「字典」實作不支援。

明確介面實作

ICollection.CopyTo(Array, Int32)

如需這個成員的說明,請參閱 CopyTo(Array, Int32)

ICollection.IsSynchronized

如需這個成員的說明,請參閱 IsSynchronized

ICollection.SyncRoot

如需這個成員的說明,請參閱 SyncRoot

IEnumerable.GetEnumerator()

如需這個成員的說明,請參閱 GetEnumerator()

IUriContext.BaseUri

如需這個成員的說明,請參閱 BaseUri

擴充方法

Cast<TResult>(IEnumerable)

IEnumerable 的項目轉換成指定的型別。

OfType<TResult>(IEnumerable)

根據指定的型別來篩選 IEnumerable 的項目。

AsParallel(IEnumerable)

啟用查詢的平行化作業。

AsQueryable(IEnumerable)

IEnumerable 轉換成 IQueryable

適用於

另請參閱