ContextItem 类

表示设计器中的一个状态。

继承层次结构

System.Object
  Microsoft.Windows.Design.ContextItem
    Microsoft.Windows.Design.AssemblyReferences
    Microsoft.Windows.Design.Interaction.CurrentDesignerView
    Microsoft.Windows.Design.Interaction.FocusedTask
    Microsoft.Windows.Design.Interaction.Selection
    Microsoft.Windows.Design.Interaction.Tool

命名空间:  Microsoft.Windows.Design
程序集:  Microsoft.Windows.Design.Extensibility(在 Microsoft.Windows.Design.Extensibility.dll 中)

语法

声明
Public MustInherit Class ContextItem
public abstract class ContextItem
public ref class ContextItem abstract
[<AbstractClass>]
type ContextItem =  class end
public abstract class ContextItem

ContextItem 类型公开以下成员。

构造函数

  名称 说明
受保护的方法 ContextItem 初始化 ContextItem 类的新实例。

页首

属性

  名称 说明
公共属性 ItemType 在派生类中被重写时,获取此编辑上下文项的项类型。

页首

方法

  名称 说明
公共方法 Equals 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。)
受保护的方法 Finalize 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法 GetHashCode 用作特定类型的哈希函数。 (继承自 Object。)
公共方法 GetType 获取当前实例的 Type。 (继承自 Object。)
受保护的方法 MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
受保护的方法 OnItemChanged 在上下文项存储到上下文项管理器中之前对其进行调用。
公共方法 ToString 返回表示当前对象的字符串。 (继承自 Object。)

页首

备注

上下文项是包含状态的不可变对象。 一些上下文项还定义方法,这些方法可以对上下文项所包含的状态执行操作。 所有上下文项目都必须由 ContextItem 这个基本类导出。

上下文项可存在于编辑上下文中。 上下文项是瞬态的,但它们始终有一个值。 即使某个特定的上下文项不在上下文中,仍会始终提供一个默认值。 因此,上下文永远不会返回 nullnull 引用(在 Visual Basic 中为 Nothing)。

与服务不同的是,上下文项的值可以随时更改。 这表示,不应缓存上下文项。 使用上下文的代码可以订阅 SubscribeContextCallback<TContextItemType>,它在特定类型的上下文项发生更改时引发。

从 ContextItem 派生的类必须定义一个空构造函数。 上下文项的这一空构造函数版本表示其默认值。 此默认值是当 ContextItemManager 不包含所请求类型的上下文项时,从 GetValue 返回的值。

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

请参见

参考

Microsoft.Windows.Design 命名空间

ContextItemManager

SubscribeContextCallback<TContextItemType>

ServiceManager

FeatureManager

其他资源

编辑上下文体系结构

了解 WPF 设计器扩展性