IHierarchicalEnumerable 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示可以使用接口枚举的 IEnumerator 分层集合。 实现接口的 IHierarchicalEnumerable 集合由 ASP.NET 网站导航和数据源控件使用。
public interface class IHierarchicalEnumerable : System::Collections::IEnumerable
public interface IHierarchicalEnumerable : System.Collections.IEnumerable
type IHierarchicalEnumerable = interface
interface IEnumerable
Public Interface IHierarchicalEnumerable
Implements IEnumerable
- 派生
- 实现
示例
下面的代码示例演示如何使用扩展IHierarchicalEnumerable和提供包装ArrayList对象的对象的集合IHierarchyData的类实现FileSystemInfo接口。 调用IHierarchicalEnumerable方法时HierarchicalDataSourceView,派生自Select的类使用该集合来返回分层节点的集合。 该代码示例是 HierarchicalDataSourceControl 类中的一个较大示例的一部分。
// A collection of FileSystemHierarchyData objects
public class FileSystemHierarchicalEnumerable :
ArrayList, IHierarchicalEnumerable
{
public FileSystemHierarchicalEnumerable()
: base()
{
}
public IHierarchyData GetHierarchyData(object enumeratedItem)
{
return enumeratedItem as IHierarchyData;
}
}
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
注解
该 IHierarchicalEnumerable 接口扩展 IEnumerable 接口并公开 GetHierarchyData,这是一种用于从枚举项中检索 IHierarchyData 对象的方法,除了 GetEnumerator 该方法。
通常,使用IHierarchicalEnumerable集合的客户端通过调用IEnumerator该方法检索对象GetEnumerator,然后循环访问枚举并调用GetHierarchyData每个枚举项以检索对象IHierarchyData。
方法
| 名称 | 说明 |
|---|---|
| GetEnumerator() |
返回循环访问集合的枚举器。 (继承自 IEnumerable) |
| GetHierarchyData(Object) |
返回指定枚举项的分层数据项。 |
扩展方法
| 名称 | 说明 |
|---|---|
| AsParallel(IEnumerable) |
启用查询的并行化。 |
| AsQueryable(IEnumerable) |
将 IEnumerable 转换为 IQueryable。 |
| Cast<TResult>(IEnumerable) |
将 IEnumerable 的元素强制转换为指定类型。 |
| OfType<TResult>(IEnumerable) |
根据指定类型筛选 IEnumerable 的元素。 |