IHierarchicalEnumerable Interface


Represents a hierarchical collection that can be enumerated with an IEnumerator interface. Collections that implement the IHierarchicalEnumerable interface are used by ASP.NET site navigation and data source controls.

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)

Public Interface IHierarchicalEnumerable
	Inherits IEnumerable


Returns an enumerator that iterates through a collection.(Inherited from IEnumerable.)


Returns a hierarchical data item for the specified enumerated item.


Overloaded. Enables parallelization of a query.(Defined by ParallelEnumerable.)


Overloaded. Converts an IEnumerable to an IQueryable.(Defined by Queryable.)

System_CAPS_pubmethodCast(Of TResult)()

Casts the elements of an IEnumerable to the specified type.(Defined by Enumerable.)

System_CAPS_pubmethodOfType(Of TResult)()

Filters the elements of an IEnumerable based on a specified type.(Defined by Enumerable.)

The IHierarchicalEnumerable interface extends the IEnumerable interface and exposes GetHierarchyData, which is a method used to retrieve an IHierarchyData object from an enumerated item, in addition to the GetEnumerator method.

Typically, clients that use IHierarchicalEnumerable collections retrieve an IEnumerator object by calling the GetEnumerator method, then iterate through the enumeration and call the GetHierarchyData on each enumerated item to retrieve an IHierarchyData object.

The following code example demonstrates how to implement the IHierarchicalEnumerable interface with a class that extends ArrayList and provides a collection of IHierarchyData objects that wrap FileSystemInfo objects. The IHierarchicalEnumerable collection is used by classes that derive from HierarchicalDataSourceView to return a collection of hierarchical nodes when the Select method is called. This code example is part of a larger example provided for the HierarchicalDataSourceControl class.

Public Class FileSystemHierarchicalEnumerable
    Inherits ArrayList
    Implements IHierarchicalEnumerable

    Public Sub New()
    End Sub

    Public Overridable Function GetHierarchyData( _
        ByVal enumeratedItem As Object) As IHierarchyData _
        Implements IHierarchicalEnumerable.GetHierarchyData

        Return CType(enumeratedItem, IHierarchyData)
    End Function

End Class

.NET Framework
Available since 2.0
Return to top