.NET Framework Class Library
PropertyDescriptor..::.CanResetValue Method

When overridden in a derived class, returns whether resetting an object changes its value.

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

Visual Basic (Declaration)
Public MustOverride Function CanResetValue ( _
    component As Object _
) As Boolean
Visual Basic (Usage)
Dim instance As PropertyDescriptor
Dim component As Object
Dim returnValue As Boolean

returnValue = instance.CanResetValue(component)
C#
public abstract bool CanResetValue(
    Object component
)
Visual C++
public:
virtual bool CanResetValue(
    Object^ component
) abstract
JScript
public abstract function CanResetValue(
    component : Object
) : boolean

Parameters

component
Type: System..::.Object
The component to test for reset capability.

Return Value

Type: System..::.Boolean
true if resetting the component changes its value; otherwise, false.
Remarks

Typically, this method is implemented through reflection.

Notes to Inheritors:

When overridden in a derived class, this method looks for a DefaultValueAttribute. If it finds one, it compares the value of the attribute with the property's current value. It returns true when the default value does not match the property's current value. If this method cannot find a DefaultValueAttribute, it looks for a "ShouldPersistMyProperty" method that you need to implement yourself. If this is found, CanResetValue returns what "ShouldPersistMyProperty" returns. Otherwise, it looks for a "ResetMyProperty" method that you need to implement yourself. If this is found, CanResetValue returns true. If it cannot find a DefaultValueAttribute, a "ShouldPersistMyProperty" method, or a "ResetMyProperty" method, then it returns false.

Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0
See Also

Reference

Tags :


Community Content

Alan J. McFarlane
"ShouldPersistMyProperty" should say "ShouldSerializeMyProperty"?
The documentation for the sibling method ShouldSerializeValue talks of the "ShouldSerializeMyProperty" method, the same name is discussed at "Defining Default Values with the ShouldSerialize and Reset Methods" at http://msdn.microsoft.com/en-us/library/53b8022e.aspx calling it "ShouldSerializePropertyName".

Therefore I think the reference here to "ShouldPersistMyProperty" is wrong.
Tags : contentbug

Page view tracker