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” 方法,則不會執行作業。