共用方式為


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)中,類別 ResourceDictionary 通常是隱含的集合元素,當屬性元素語法中給出時,是多個 Resources 屬性的物件元素值。 關於 XAML 中隱式集合的詳細資訊,請參見 XAML 語法詳細說明。 例外是你想指定合併字典;詳情請參見 合併資源字典

另一種可能的 XAML 用途是將資源字典宣告為獨立的 XAML 檔案,並在執行時 Load 載入或將其作為資源或鬆散檔案納入(完全信任)專案中。 此時, ResourceDictionary 可以宣告為物件元素,作為 XAML 的根元素。 如果你打算將 XML 命名空間值作為根元素,必須將適當的 XML 命名空間值(WPF 命名空間預設值,XAML 命名空間通常 x: 也會被映射)到該 ResourceDictionary 元素上。 接著你可以加入子元素來定義資源,每個元素的 x:Key 值。

XAML 隱性集合的使用

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

XAML 值

資源性質 一個指定屬性元素的屬性,其中該屬性的值型態為 ResourceDictionary。 通常,這是Resources應用資源案例中 的FrameworkElementFrameworkContentElement屬性或 ,或 的Application屬性。

oneOrMore資源 一個或多個資源指定為物件元素。 你指定的每個資源都必須指派一個 x:Key 指令

建構函式

名稱 Description
ResourceDictionary()

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

屬性

名稱 Description
Count

取得底數 ResourceDictionary的條目數。

DeferrableContent

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

InvalidatesImplicitDataTemplateResources

取得或設定一個值,指示物件所觸發 ResourceDictionary 的無效化是否會使 ContentPresenter 物件重新評估其範本的選擇。 當隱含的資料範本資源變更時,就會發生無效化。

IsFixedSize

判斷這是 ResourceDictionary 不是固定大小。

IsReadOnly

判斷這是 ResourceDictionary 不是唯讀。

Item[Object]

取得或設定與該金鑰相關的值。

Keys

取得包含於此 ResourceDictionary的所有鍵的集合。

MergedDictionaries

取得組成合併詞典中各種資源字典的詞典集合 ResourceDictionary

Source

取得或設定統一資源識別碼(URI)以載入資源。

Values

取得包含於此 ResourceDictionary鍵的所有值集合。

方法

名稱 Description
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)

此字典實作不支援。

明確介面實作

名稱 Description
ICollection.CopyTo(Array, Int32)

關於此成員的描述,請參見 CopyTo(Array, Int32)

ICollection.IsSynchronized

關於此成員的描述,請參見 IsSynchronized

ICollection.SyncRoot

關於此成員的描述,請參見 SyncRoot

IEnumerable.GetEnumerator()

關於此成員的描述,請參見 GetEnumerator()

IUriContext.BaseUri

關於此成員的描述,請參見 BaseUri

擴充方法

名稱 Description
AsParallel(IEnumerable)

啟用查詢的平行處理。

AsQueryable(IEnumerable)

IEnumerable 轉換成 IQueryable

Cast<TResult>(IEnumerable)

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

OfType<TResult>(IEnumerable)

根據指定的型別篩選 IEnumerable 的專案。

適用於

另請參閱