Re: How to determine if a property is inherited or not using reflection?

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



Thanks for the reply,

Checking if .DeclaringType is the same as .ReflectedType should do the trick.

I tried that and it seemed to work in most cases - except for one case
where I had a class ButtonControl that inherited an Infragistics
button control and the declaringtype and relfectedtype were my
buttoncontrol. I assumed it had to do w/ being in different
assemblies?

The inheritance hierarchy is actually an inheritance chain, since C# doesn't
have multiple inheritance. (Interfaces are "implemented" rather than
"inherited".) Simply following Type.BaseType will do.

Excellent. Thank you.

You'll have to enumerate interfaces and mappings with .GetInterfaces() and
.GetInterfaceMap() for a full picture.

Thankfully, I can skip that part :)
.


Quantcast