Export (0) Print
Expand All

PropertyDescriptor.ShouldSerializeValue Method

When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted.

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

public abstract bool ShouldSerializeValue(
	Object component
)

Parameters

component
Type: System.Object

The component with the property to be examined for persistence.

Return Value

Type: System.Boolean
true if the property should be persisted; otherwise, false.

Typically, this method is implemented through reflection.

Notes to Inheritors

When overridden in a derived class, this method returns true if the current value of the property is different from its default value. It looks for a default value by first looking for a DefaultValueAttribute. If the method finds this attribute, it compares the value of the attribute with the property's current value. If this method cannot find a DefaultValueAttribute, it looks for a "ShouldSerializeMyProperty" method that you need to implement. If it is found, ShouldSerializeValue invokes it. If this method cannot find a DefaultValueAttribute or a "ShouldSerializeMyProperty" method, it cannot create optimizations and it returns true.

NoteNote

The ComponentDesigner class implements special serialization logic for inherited components. For more information, see the remarks in ComponentDesigner.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Show:
© 2015 Microsoft