PropertyDescriptor.SetValue(Object, Object) Método

Definição

Quando sobrescrito numa classe derivada, define o valor do componente para um valor diferente.

public:
 abstract void SetValue(System::Object ^ component, System::Object ^ value);
public abstract void SetValue(object component, object value);
abstract member SetValue : obj * obj -> unit
Public MustOverride Sub SetValue (component As Object, value As Object)

Parâmetros

component
Object

O componente com o valor da propriedade que deve ser definido.

value
Object

O novo valor.

Observações

Normalmente, este método é implementado através da reflexão.

Este método cria um DesignerTransaction automaticamente na seguinte ordem:

  1. O método chama o IDesignerHost.CreateTransaction método para criar um novo DesignerTransaction e representar as alterações.

  2. 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.

  3. O método redefine a propriedade para o valor determinado pela ordem de verificação deste método.

  4. O método chama o IComponentChangeService.OnComponentChanged método para indicar que as alterações ocorreram.

  5. O método chama DesignerTransaction.Commit para indicar que a transação está completa.

O objetivo da transação é suportar Undo a funcionalidade Redo .

Notas para Implementadores

Quando sobrescreve este método, ele deve definir o valor da propriedade invocando o método "SetMyProperty" apropriado que precisa de implementar. Se o valor especificado não for válido, o componente deve lançar uma exceção, que é ignorada. Deve desenhar a propriedade de modo a que um método "GetMyProperty" (que implementou) após um método "SetMyProperty" devolva o valor passado quando o método "SetMyProperty" não lança uma exceção.

Aplica-se a

Ver também