Enable an object to participate in custom behavior, such as registering for events, or watching state transitions.
Assembly: System.ServiceModel (in System.ServiceModel.dll)
Public Interface IExtensibleObject(Of T As {Object, IExtensibleObject(Of T)})
public interface IExtensibleObject<T> where T : Object, IExtensibleObject<T>
generic<typename T> where T : Object, IExtensibleObject<T> public interface class IExtensibleObject
type IExtensibleObject<'T when 'T : Object and IExtensibleObject<'T>> = interface end
Type Parameters
- T
-
The type of the extension class.
The IExtensibleObject<T> type exposes the following members.
| Name | Description | |
|---|---|---|
|
Extensions | Gets a collection of extension objects for this extensible object. |
Implement IExtensibleObject<T> to enable aggregation of extensions.
For example, if you are implementing a TreeNode class and want to allow external code to add annotations and methods to some instances of TreeNode, you can have TreeNode implement IExtensibleObject<TreeNode>. This enables code that uses TreeNode to add objects that implement IExtensibleObject<TreeNode> to the Extensions collection.
There are four extensible objects in :
For a discussion about how to create extension to work with these objects, see Extensible Objects.
.NET Framework
Supported in: 4, 3.5, 3.0.NET Framework Client Profile
Supported in: 4, 3.5 SP1Portable Class Library
Supported in: Portable Class LibraryWindows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.