PropertyDescriptor.ResetValue(Object) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cuando se reemplaza en una clase derivada, restablece el valor predeterminado de esta propiedad del componente.
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
Componente cuyo valor de propiedad se va a restablecer en el valor predeterminado.
Comentarios
Normalmente, este método se implementa a través de la reflexión.
Este método determina el valor al que se restablece la propiedad en en el siguiente orden de prioridad:
Hay una propiedad sombreada para esta propiedad.
Hay para DefaultValueAttribute esta propiedad.
Hay un método "ResetMyProperty" que ha implementado, donde "MyProperty" es el nombre de la propiedad que se le pasa.
Este método crea automáticamente un objeto DesignerTransaction en el orden siguiente:
El método llama al IDesignerHost.CreateTransaction método para crear un nuevo DesignerTransaction objeto para representar los cambios.
El método llama al IComponentChangeService.OnComponentChanging método para indicar que se ha iniciado la transacción y que los cambios están a punto de producirse.
El método restablece la propiedad al valor determinado por el orden de comprobación de este método.
El método llama al IComponentChangeService.OnComponentChanged método para indicar que se han producido los cambios.
El método llama DesignerTransaction.Commit a para indicar que la transacción se ha completado.
El propósito de la transacción es admitir Undo
y Redo
funcionalidad.
Notas a los implementadores
Cuando se invalida en una clase derivada, este método busca un DefaultValueAttribute. Si encuentra uno, establece el valor de la propiedad en el DefaultValueAttribute objeto encontrado. Si este método no encuentra , DefaultValueAttributebusca un método "ResetMyProperty" que necesita implementar. Si se encuentra, el ResetValue(Object) método lo invoca. Si ResetValue(Object) no encuentra un DefaultValueAttribute método o "ResetMyProperty" que implementó, no realiza una operación.