PropertyDescriptor.ResetValue(Object) 方法

定义

当在派生类中被重写时,将组件的此属性的值重置为默认值。

public:
 abstract void ResetValue(System::Object ^ component);
public abstract void ResetValue (object component);
abstract member ResetValue : obj -> unit
Public MustOverride Sub ResetValue (component As Object)

参数

component
Object

具有要重置为默认值的属性值的组件。

注解

通常,此方法是通过反射实现的。

此方法确定要按以下优先级顺序将属性重置为的值:

  1. 此属性有阴影属性。

  2. 此属性有一个 DefaultValueAttribute

  3. 有一个已实现的“ResetMyProperty”方法,其中“MyProperty”是传递给它的属性的名称。

此方法按以下顺序自动创建 DesignerTransaction

  1. 该方法调用 IDesignerHost.CreateTransaction 该方法以创建新 DesignerTransaction 方法来表示更改。

  2. 该方法调用 IComponentChangeService.OnComponentChanging 该方法以指示事务已开始,并且更改即将发生。

  3. 该方法将属性重置为此方法的检查顺序确定的值。

  4. 该方法调用 IComponentChangeService.OnComponentChanged 该方法以指示发生了更改。

  5. 方法调用 DesignerTransaction.Commit 以指示事务已完成。

事务的目的是支持 UndoRedo 功能。

实施者说明

在派生类中重写时,此方法将查找一个 DefaultValueAttribute。 如果找到一个,它将属性的值设置为 DefaultValueAttribute 找到的属性。 如果此方法找不到, DefaultValueAttribute它将查找需要实现的“ResetMyProperty”方法。 如果找到此项,该方法 ResetValue(Object) 将调用它。 如果 ResetValue(Object) 找不到所实现的 DefaultValueAttribute “ResetMyProperty”方法,则它不会执行操作。

适用于

另请参阅