IHierarchicalEnumerable 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示可用 IEnumerator 介面列舉的階層式集合。 ASP.NET 網站巡覽和資料來源控制項會使用此實作 IHierarchicalEnumerable 介面的集合。
public interface class IHierarchicalEnumerable : System::Collections::IEnumerable
public interface IHierarchicalEnumerable : System.Collections.IEnumerable
type IHierarchicalEnumerable = interface
interface IEnumerable
Public Interface IHierarchicalEnumerable
Implements IEnumerable
- 衍生
- 實作
範例
下列程式碼範例示範如何使用擴充 ArrayList 和提供包裝 FileSystemInfo 物件的 物件集合 IHierarchyData 來實 IHierarchicalEnumerable 作 介面。 當 IHierarchicalEnumerable 呼叫 方法時 Select ,衍生自 HierarchicalDataSourceView 的類別會使用此集合傳回階層式節點的集合。 此程式碼範例是提供給 類別之較大範例的 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 ,這是除了 方法之外,用來從列舉專案 GetEnumerator 擷取 IHierarchyData 物件的方法。
一般而言,使用 IHierarchicalEnumerable 集合 IEnumerator 的 GetEnumerator 用戶端會藉由呼叫 方法來擷取物件,然後逐一查看 列舉,並在每個列舉專案上呼叫 GetHierarchyData 來擷取 IHierarchyData 物件。
方法
GetEnumerator() |
傳回逐一查看集合的列舉值。 (繼承來源 IEnumerable) |
GetHierarchyData(Object) |
傳回指定列舉項目的階層式資料項目。 |
擴充方法
Cast<TResult>(IEnumerable) |
將 IEnumerable 的項目轉換成指定的型別。 |
OfType<TResult>(IEnumerable) |
根據指定的型別來篩選 IEnumerable 的項目。 |
AsParallel(IEnumerable) |
啟用查詢的平行化作業。 |
AsQueryable(IEnumerable) |
將 IEnumerable 轉換成 IQueryable。 |