PropertyDescriptor.ResetValue(Object) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Při přepsání v odvozené třídě obnoví hodnotu této vlastnosti komponenty na výchozí hodnotu.
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)
Parametry
- component
- Object
Komponenta s hodnotou vlastnosti, která se má obnovit na výchozí hodnotu.
Poznámky
Tato metoda se obvykle implementuje prostřednictvím reflexe.
Tato metoda určuje hodnotu, na kterou se má vlastnost resetovat, v následujícím pořadí podle priority:
Tato vlastnost má stínovou vlastnost.
Pro tuto vlastnost je DefaultValueAttribute k dispozici.
Existuje metoda ResetMyProperty, kterou jste implementovali, kde "MyProperty" je název vlastnosti, kterou do ní předáte.
Tato metoda vytvoří DesignerTransaction automaticky v následujícím pořadí:
Metoda volá metodu IDesignerHost.CreateTransaction k vytvoření nového DesignerTransaction , který bude představovat změny.
Metoda volá metodu IComponentChangeService.OnComponentChanging označující, že transakce byla zahájena a změny se chystanou.
Metoda resetuje vlastnost na hodnotu určenou pořadím kontroly této metody.
Metoda volá metodu IComponentChangeService.OnComponentChanged označující, že došlo ke změnám.
Volání metody DesignerTransaction.Commit indikuje, že transakce je dokončena.
Účelem transakce je podpora Undo
a Redo
funkčnost.
Poznámky pro implementátory
Při přepsání v odvozené třídě tato metoda hledá DefaultValueAttribute. Pokud ji najde, nastaví hodnotu vlastnosti na nalezenou DefaultValueAttribute . Pokud tato metoda nemůže najít metodu DefaultValueAttribute, vyhledá metodu ResetMyProperty, kterou potřebujete implementovat. Pokud je nalezena, ResetValue(Object) metoda ji vyvolá. Pokud ResetValue(Object) nelze najít DefaultValueAttribute nebo "ResetMyProperty" metodu, kterou jste implementovali, neprovede operaci.