Freigeben über


IHierarchyData.GetParent Methode

Definition

Ruft ein IHierarchyData-Objekt ab, das den übergeordneten Knoten des aktuellen hierarchischen Knotens darstellt.

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

Gibt zurück

IHierarchyData

Ein IHierarchyData-Objekt, das den übergeordneten Knoten des aktuellen hierarchischen Knotens darstellt.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die GetParent Methode in einer Klasse implementiert wird, die die IHierarchyData Schnittstelle implementiert. Die FileSystemHierarchyData Klasse umschließt ein FileSystemInfo Objekt, und die GetParent Methodenimplementierung überprüft den Typ des FileSystemInfo Objekts und gibt das entsprechende übergeordnete Objekt basierend auf dem Typ zurück. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die IHierarchyData Schnittstelle und die HierarchicalDataSourceControl Klasse bereitgestellt wird.

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

Hinweise

Die IHierarchyData Schnittstelle definiert keine HasParent-Komforteigenschaft, daher müssen Aufrufer den Rückgabewert der GetParent Methode null überprüfen, um zu bestimmen, ob der aktuelle Knoten der Stammknoten der hierarchischen IHierarchyData Datenstruktur ist, zu der der Knoten gehört.

Gilt für

Siehe auch