TypeDescriptionProvider.GetExtendedTypeDescriptor(Object) Method


Gets an extended custom type descriptor for the given object.

 virtual System::ComponentModel::ICustomTypeDescriptor ^ GetExtendedTypeDescriptor(System::Object ^ instance);
public virtual System.ComponentModel.ICustomTypeDescriptor GetExtendedTypeDescriptor (object instance);
abstract member GetExtendedTypeDescriptor : obj -> System.ComponentModel.ICustomTypeDescriptor
override this.GetExtendedTypeDescriptor : obj -> System.ComponentModel.ICustomTypeDescriptor
Public Overridable Function GetExtendedTypeDescriptor (instance As Object) As ICustomTypeDescriptor



The object for which to get the extended type descriptor.


An ICustomTypeDescriptor that can provide extended metadata for the object.


An extended type descriptor is a custom type descriptor that offers properties that other objects have added to this object, but that are not actually defined on the object. For example, in the .NET Framework component model, objects that implement the IExtenderProvider interface can attach properties to other objects that reside in the same logical container. The overloaded GetTypeDescriptor methods do not return a type descriptor that provides these extra extended properties. The GetExtendedTypeDescriptor method returns the set of these extended properties. The TypeDescriptor will automatically merge the results of these two property collections. While the .NET Framework component model supports only extended properties, GetExtendedTypeDescriptor can be used for extended attributes as well as events, if the type description provider supports it.

GetExtendedTypeDescriptor is virtual and, by default, returns a custom type descriptor that returns empty results if no parent provider was passed. If a parent provider was passed, this method will invoke the parent provider's GetExtendedTypeDescriptor method.

Applies to

See also