Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

PropertyDescriptor::SetValue Method (Object^, Object^)

 

When overridden in a derived class, sets the value of the component to a different value.

Namespace:   System.ComponentModel
Assembly:  System (in System.dll)

public:
virtual void SetValue(
	Object^ component,
	Object^ value
) abstract

Parameters

component
Type: System::Object^

The component with the property value that is to be set.

value
Type: System::Object^

The new value.

Typically, this method is implemented through reflection.

This method creates a DesignerTransaction automatically in the following order:

  1. The method calls the IDesignerHost::CreateTransaction method to create a new DesignerTransaction to represent the changes.

  2. The method calls the IComponentChangeService::OnComponentChanging method to indicate that the transaction has begun and the changes are about to occur.

  3. The method resets the property to the value determined by this method's checking order.

  4. The method calls the IComponentChangeService::OnComponentChanged method to indicate that the changes have occurred.

  5. The method calls DesignerTransaction::Commit to indicate that the transaction is complete.

The purpose of the transaction is to support Undo and Redo functionality.

Notes to Inheritors:

When you override this method, it should set the value of the property by invoking the appropriate "SetMyProperty" method that you need to implement. If the value specified is not valid, the component should throw an exception, which is passed up. You should design the property so that a "GetMyProperty" method (that you have implemented) following a "SetMyProperty" method returns the value passed in when the "SetMyProperty" method does not throw an exception.

.NET Framework
Available since 1.1
Return to top
Show:
© 2016 Microsoft