PropertyDescriptor.ResetValue(Object) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
当在派生类中被重写时,将组件的此属性的值重置为默认值。
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
具有要重置为默认值的属性值的组件。
注解
通常,此方法是通过反射实现的。
此方法确定要按以下优先级顺序将属性重置为的值:
此属性有阴影属性。
此属性有一个 DefaultValueAttribute 。
有一个已实现的“ResetMyProperty”方法,其中“MyProperty”是传递给它的属性的名称。
此方法按以下顺序自动创建 DesignerTransaction :
该方法调用 IDesignerHost.CreateTransaction 该方法以创建新 DesignerTransaction 方法来表示更改。
该方法调用 IComponentChangeService.OnComponentChanging 该方法以指示事务已开始,并且更改即将发生。
该方法将属性重置为此方法的检查顺序确定的值。
该方法调用 IComponentChangeService.OnComponentChanged 该方法以指示发生了更改。
方法调用 DesignerTransaction.Commit 以指示事务已完成。
事务的目的是支持 Undo
和 Redo
功能。
实施者说明
在派生类中重写时,此方法将查找一个 DefaultValueAttribute。 如果找到一个,它将属性的值设置为 DefaultValueAttribute 找到的属性。 如果此方法找不到, DefaultValueAttribute它将查找需要实现的“ResetMyProperty”方法。 如果找到此项,该方法 ResetValue(Object) 将调用它。 如果 ResetValue(Object) 找不到所实现的 DefaultValueAttribute “ResetMyProperty”方法,则它不会执行操作。