Freezable 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
定义具有可修改状态和只读(冻结)状态的对象。 从 Freezable 派生的类提供详细更改通知,可以设置为不可变,并且可以克隆自身。
public ref class Freezable abstract : System::Windows::DependencyObject
public abstract class Freezable : System.Windows.DependencyObject
type Freezable = class
inherit DependencyObject
Public MustInherit Class Freezable
Inherits DependencyObject
- 继承
- 派生
注解
类 Freezable 提供了一些特殊功能,可帮助提高使用修改或复制成本高昂的对象时的应用程序性能。 Freezable对象的示例包括:
从冻结派生
派生自 Freezable 的类获得以下功能:
特殊状态:只读 (冻结) 状态和可写状态。
线程安全性:可以在线程之间共享冻结 Freezable 对象。
详细更改通知:与其他 DependencyObject 对象不同, Freezable 对象在子属性值更改时提供更改通知。
轻松克隆:Freezable 类已经实现了几种生成深层克隆的方法。
有关使用和创建自己的 Freezable 对象的信息,请参阅 可冻结对象概述。
构造函数
Freezable() |
初始化 Freezable 派生类的新实例。 |
属性
CanFreeze |
获取一个值,该值指示是否可将对象变为不可修改。 |
DependencyObjectType |
获取 DependencyObjectType 包装此实例的 CLR 类型的 。 (继承自 DependencyObject) |
Dispatcher |
获取与此 Dispatcher 关联的 DispatcherObject。 (继承自 DispatcherObject) |
IsFrozen |
获取一个值,该值指示对象当前是否可修改。 |
IsSealed |
获取一个值,该值指示此实例当前是否为密封的(只读)。 (继承自 DependencyObject) |
方法
事件
Changed |
在修改 Freezable 或其包含的对象时发生。 |
适用于
线程安全性
此类型的任何公共 static
成员都是线程安全的。 但不保证所有实例成员都是线程安全的。
IsFrozen当 属性为 false
时,Freezable只能从创建对象的线程访问对象。 尝试从另一个线程访问它会 InvalidOperationException引发 。 Invoke和 BeginInvoke 方法支持封送到正确的线程。
当其 IsFrozen 属性为 true
时, Freezable 对象为自由线程。 有关详细信息,请参阅 Freezable 对象概述。
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈