PropertyDescriptor.ResetValue(Object) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Quando sobrescrito numa classe derivada, redefine o valor desta propriedade do componente para o valor padrão.
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)
Parâmetros
- component
- Object
O componente com o valor da propriedade que deve ser reiniciado para o valor padrão.
Observações
Normalmente, este método é implementado através da reflexão.
Este método determina o valor para redefinir a propriedade na seguinte ordem de precedência:
Existe uma propriedade sombreada para esta propriedade.
Existe uma DefaultValueAttribute para esta propriedade.
Existe um método "ResetMyProperty" que implementaste, onde "MyProperty" é o nome da propriedade que lhe passas.
Este método cria um DesignerTransaction automaticamente na seguinte ordem:
O método chama o IDesignerHost.CreateTransaction método para criar um novo DesignerTransaction e representar as alterações.
O método chama o IComponentChangeService.OnComponentChanging método para indicar que a transação começou e que as alterações estão prestes a ocorrer.
O método redefine a propriedade para o valor determinado pela ordem de verificação deste método.
O método chama o IComponentChangeService.OnComponentChanged método para indicar que as alterações ocorreram.
O método indica DesignerTransaction.Commit que a transação foi concluída.
O objetivo da transação é suportar Undo a funcionalidade Redo .
Notas para Implementadores
Quando sobreposto numa classe derivada, este método procura um DefaultValueAttribute. Se encontrar um, define o valor da propriedade para o DefaultValueAttribute que encontrou. Se este método não conseguir encontrar um DefaultValueAttribute, procura um método "ResetMyProperty" que precisa de implementar. Se isto for encontrado, o ResetValue(Object) método invoca-o. Se ResetValue(Object) não conseguir encontrar um DefaultValueAttribute método "ResetMyProperty" que implementou, não executa nenhuma operação.