ResourceDictionary 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供一个哈希表/字典实现,其中包含组件所使用的 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 的根元素。 如果计划将其用作根元素,则必须将 WPF 命名空间 (的默认值(通常 x:
为 XAML 命名空间) )映射到 ResourceDictionary 元素的相应 XML 命名空间值。 然后,可以添加用于定义资源的子元素,每个元素都有 一个 x:Key 值。
XAML 隐式集合用法
<object>
<object.resourcesProperty>
oneOrMoreResources
</object.resourcesProperty>
</object>
XAML 值
resourcesProperty
指定属性元素的属性,其中该属性的值类型为 ResourceDictionary。 通常,在应用程序资源案例中,这是 Resources
或 FrameworkContentElement的 Application 或 属性FrameworkElement。
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。 |