Aracılığıyla paylaş


IHierarchyData.GetParent Yöntem

Tanım

Geçerli hiyerarşik düğümün üst düğümünü temsil eden bir IHierarchyData nesnesi alır.

public:
 System::Web::UI::IHierarchyData ^ GetParent();
public System.Web.UI.IHierarchyData GetParent ();
abstract member GetParent : unit -> System.Web.UI.IHierarchyData
Public Function GetParent () As IHierarchyData

Döndürülenler

IHierarchyData

IHierarchyData Geçerli hiyerarşik düğümün üst düğümünü temsil eden nesne.

Örnekler

Aşağıdaki kod örneği, yönteminin arabirimini GetParent uygulayan bir sınıfta nasıl uygulandığını IHierarchyData gösterir. FileSystemHierarchyData sınıfı bir FileSystemInfo nesneyi sarmalar ve GetParent yöntem uygulaması nesnenin FileSystemInfo türünü denetler ve türüne göre uygun üst nesneyi döndürür. Bu kod örneği, arabirimi ve HierarchicalDataSourceControl sınıfı için IHierarchyData sağlanan daha büyük bir örneğin parçasıdır.

public IHierarchicalEnumerable GetChildren()
{
    FileSystemHierarchicalEnumerable children =
        new FileSystemHierarchicalEnumerable();

    if (typeof(DirectoryInfo) == fileSystemObject.GetType())
    {
        DirectoryInfo temp = (DirectoryInfo)fileSystemObject;
        foreach (FileSystemInfo fsi in temp.GetFileSystemInfos())
        {
            children.Add(new FileSystemHierarchyData(fsi));
        }
    }
    return children;
}

public IHierarchyData GetParent()
{
    FileSystemHierarchicalEnumerable parentContainer =
        new FileSystemHierarchicalEnumerable();

    if (typeof(DirectoryInfo) == fileSystemObject.GetType())
    {
        DirectoryInfo temp = (DirectoryInfo)fileSystemObject;
        return new FileSystemHierarchyData(temp.Parent);
    }
    else if (typeof(FileInfo) == fileSystemObject.GetType())
    {
        FileInfo temp = (FileInfo)fileSystemObject;
        return new FileSystemHierarchyData(temp.Directory);
    }
    // If FileSystemObj is any other kind of FileSystemInfo, ignore it.
    return null;
}
    Public Overridable Function GetChildren() _
        As IHierarchicalEnumerable _
        Implements IHierarchyData.GetChildren

        Dim children As New FileSystemHierarchicalEnumerable()

        If GetType(DirectoryInfo) Is fileSystemObject.GetType() Then
            Dim temp As DirectoryInfo = _
                CType(fileSystemObject, DirectoryInfo)
            Dim fsi As FileSystemInfo
            For Each fsi In temp.GetFileSystemInfos()
                children.Add(New FileSystemHierarchyData(fsi))
            Next fsi
        End If
        Return children
    End Function 'GetChildren


    Public Overridable Function GetParent() As IHierarchyData _
     Implements IHierarchyData.GetParent
        Dim parentContainer As New FileSystemHierarchicalEnumerable()

        If GetType(DirectoryInfo) Is fileSystemObject.GetType() Then
            Dim temp As DirectoryInfo = _
                CType(fileSystemObject, DirectoryInfo)
            Return New FileSystemHierarchyData(temp.Parent)
        ElseIf GetType(FileInfo) Is fileSystemObject.GetType() Then
            Dim temp As FileInfo = CType(fileSystemObject, FileInfo)
            Return New FileSystemHierarchyData(temp.Directory)
        End If
        ' If FileSystemObj is any other kind of FileSystemInfo, ignore it.
        Return Nothing
    End Function 'GetParent
End Class

Açıklamalar

Arabirim IHierarchyData bir HasParent kolaylık özelliği tanımlamaz, bu nedenle çağıranların geçerli IHierarchyData düğümün düğümün GetParent ait olduğu hiyerarşik veri yapısının kök düğümü olup olmadığını belirlemek için null yönteminin dönüş değerini denetlemesi gerekir.

Şunlara uygulanır

Ayrıca bkz.