HtmlElement.Children Eigenschaft

Definition

Ruft eins HtmlElementCollection aller untergeordneten Elemente des aktuellen Elements ab.

public:
 property System::Windows::Forms::HtmlElementCollection ^ Children { System::Windows::Forms::HtmlElementCollection ^ get(); };
public System.Windows.Forms.HtmlElementCollection Children { get; }
member this.Children : System.Windows.Forms.HtmlElementCollection
Public ReadOnly Property Children As HtmlElementCollection

Eigenschaftswert

Eine Auflistung aller HtmlElement Objekte, die das aktuelle Element als übergeordnetes Element aufweisen.

Beispiele

Im folgenden Codebeispiel wird ein beliebiges HTML-Dokument untersucht und eine Zeichenfolge abgeleitet, die die Elemente beschreibt, wobei Einzüge und Ebenennummern verwendet werden, um anzugeben, wie tief geschachtelt die Elemente im Dokument sind. Dies geschieht, indem die Children Auflistung aller Elemente rekursiv durchsucht wird, beginnend mit dem HTML-Element oben im Dokument. Dieses Codebeispiel erfordert, dass Ihre Anwendung ein WebBrowser Steuerelement mit dem Namen WebBrowser1hat.

private void PrintDomBegin()
{
    if (webBrowser1.Document != null)
    {
        HtmlElementCollection elemColl = null;
        HtmlDocument doc = webBrowser1.Document;
        if (doc != null)
        {
            elemColl = doc.GetElementsByTagName("HTML");
            String str = PrintDom(elemColl, new System.Text.StringBuilder(), 0);
            webBrowser1.DocumentText = str;
        }
    }
}

private string PrintDom(HtmlElementCollection elemColl, System.Text.StringBuilder returnStr, Int32 depth)
{
    System.Text.StringBuilder str = new System.Text.StringBuilder();

    foreach (HtmlElement elem in elemColl)
    {
        string elemName;

        elemName = elem.GetAttribute("ID");
        if (elemName == null || elemName.Length == 0)
        {
            elemName = elem.GetAttribute("name");
            if (elemName == null || elemName.Length == 0)
            {
                elemName = "<no name>";
            }
        }

        str.Append(' ', depth * 4);
        str.Append(elemName + ": " + elem.TagName + "(Level " + depth + ")");
        returnStr.AppendLine(str.ToString());

        if (elem.CanHaveChildren)
        {
            PrintDom(elem.Children, returnStr, depth + 1);
        }

        str.Remove(0, str.Length);
    }

    return (returnStr.ToString());
}
Private Sub PrintDomBegin()
    If (WebBrowser1.Document IsNot Nothing) Then
        Dim ElemColl As HtmlElementCollection

        Dim Doc As HtmlDocument = WebBrowser1.Document
        If (Not (Doc Is Nothing)) Then
            ElemColl = Doc.GetElementsByTagName("HTML")
            Dim Str As String = PrintDom(ElemColl, New System.Text.StringBuilder(), 0)

            WebBrowser1.DocumentText = Str
        End If
    End If
End Sub

Private Function PrintDom(ByVal ElemColl As HtmlElementCollection, ByRef ReturnStr As System.Text.StringBuilder, ByVal Depth As Integer) As String
    Dim Str As New System.Text.StringBuilder()

    For Each Elem As HtmlElement In ElemColl
        Dim ElemName As String

        ElemName = Elem.GetAttribute("ID")
        If (ElemName Is Nothing Or ElemName.Length = 0) Then
            ElemName = Elem.GetAttribute("name")
            If (ElemName Is Nothing Or ElemName.Length = 0) Then
                ElemName = "<no name>"
            End If
        End If

        Str.Append(CChar(" "), Depth * 4)
        Str.Append(ElemName & ": " & Elem.TagName & "(Level " & Depth & ")")
        ReturnStr.AppendLine(Str.ToString())

        If (Elem.CanHaveChildren) Then
            PrintDom(Elem.Children, ReturnStr, Depth + 1)
        End If

        Str.Remove(0, Str.Length)
    Next

    PrintDom = ReturnStr.ToString()
End Function

Hinweise

Viele der Elemente in einer HTML-Datei können andere HTML-Elemente darunter haben. Die Children Auflistung bietet einen einfachen Mechanismus zum Untersuchen der Struktur eines Dokuments.

Children macht nur Elemente verfügbar, deren direktes übergeordnetes Element das aktuelle Element ist. Wenn Sie über ein HtmlElementTABLE Element verfügen, Children erhalten Sie alle TR (Zeilen)-Elemente innerhalb der TABLE. Um die (Zell)-Elemente abzurufen, die in den TD Elementen enthalten sind, müssen Sie entweder die TR Auflistung für jedes einzelne Children Element verwenden oder die TR Auflistung verwendenAll.HtmlElement

Elemente in dieser Auflistung sind nicht garantiert in der Quellreihenfolge.

Wenn CanHaveChildren ja false, ist dies Children immer leer.

Gilt für:

Weitere Informationen