Re: InheritedPropertyDescriptor vs. ReflectedPropertyDescriptor

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance



Hi Notre,

I consulted this issue in our inner discussion group, and I got the
following reply.

InheritedPropertyDescriptor is used by the default ComponentDesigner to
stand in for properties that are inherited from a base class. There are
two cases where these property descriptors are added:

1. To the root object itself, since you are inheriting from its base class.
2. To fields found in the base class of the root object. Public and
protected fields from the base class are added to the designer so they can
be manipulated by the user.

InheritedPropertyDescriptor modifies the default value of properties so the
default value is the current value at object instantiation. As the
property was inherited from another instance, the designer must make it so
resetting the property value resets it to the value that was set by the
inherited class, which may differ from the default value stored in metadata.

Hope this helpful to you.


Sincerely,
Linda Liu
Microsoft Online Community Support

.