Freigeben über


HtmlDocument.CreateElement(String) Methode

Definition

Erstellt eine neue HtmlElement des angegebenen HTML-Tagtyps.

public:
 System::Windows::Forms::HtmlElement ^ CreateElement(System::String ^ elementTag);
public System.Windows.Forms.HtmlElement CreateElement(string elementTag);
public System.Windows.Forms.HtmlElement? CreateElement(string elementTag);
member this.CreateElement : string -> System.Windows.Forms.HtmlElement
Public Function CreateElement (elementTag As String) As HtmlElement

Parameter

elementTag
String

Der Name des zu erstellenden HTML-Elements.

Gibt zurück

Ein neues Element des angegebenen Tagtyps.

Beispiele

Im folgenden Codebeispiel werden Daten aus der Northwind-Datenbank verwendet, um mithilfe einer HTML-Tabelle eine HTML-Tabelle CreateElementzu erstellen. Die AppendChild Methode wird auch verwendet, zuerst zum Hinzufügen von Zellen (TD Elementen) zu Zeilen (TR Elementen), dann zum Hinzufügen von Zeilen zur Tabelle und schließlich zum Anfügen der Tabelle an das Ende des aktuellen Dokuments. Das Codebeispiel erfordert, dass Ihre Anwendung über ein WebBrowser Steuerelement verfügt, das aufgerufen wird WebBrowser1.

private void DisplayCustomersTable()
{
    DataSet customersSet = new DataSet();
    DataTable customersTable = null;
    SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM Customers", "Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;");
    sda.Fill(customersTable);
    customersTable = customersSet.Tables[0];

    if (webBrowser1.Document != null)
    {
        HtmlElement tableRow = null;
        HtmlElement headerElem = null;

        HtmlDocument doc = webBrowser1.Document;
        HtmlElement tableElem = doc.CreateElement("TABLE");
        doc.Body.AppendChild(tableElem);

        HtmlElement tableHeader = doc.CreateElement("THEAD");
        tableElem.AppendChild(tableHeader);
        tableRow = doc.CreateElement("TR");
        tableHeader.AppendChild(tableRow);

        foreach (DataColumn col in customersTable.Columns)
        {
            headerElem = doc.CreateElement("TH");
            headerElem.InnerText = col.ColumnName;
            tableRow.AppendChild(headerElem);
        }

        // Create table rows.
        HtmlElement tableBody = doc.CreateElement("TBODY");
        tableElem.AppendChild(tableBody);
        foreach (DataRow dr in customersTable.Rows)
        {
            tableRow = doc.CreateElement("TR");
            tableBody.AppendChild(tableRow);
            foreach (DataColumn col in customersTable.Columns)
            {
                Object dbCell = dr[col];
                HtmlElement tableCell = doc.CreateElement("TD");
                if (!(dbCell is DBNull))
                {
                    tableCell.InnerText = dbCell.ToString();
                }
                tableRow.AppendChild(tableCell);
            }
        }
    }
}
Private Sub DisplayCustomersTable()
    ' Initialize the database connection.
    Dim CustomerData As New DataSet()
    Dim CustomerTable As DataTable

    Try
        Dim DBConn As New SqlConnection("Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;")
        Dim DBQuery As New SqlDataAdapter("SELECT * FROM CUSTOMERS", DBConn)
        DBQuery.Fill(CustomerData)
    Catch dbEX As DataException

    End Try

    CustomerTable = CustomerData.Tables("Customers")

    If (Not (WebBrowser1.Document Is Nothing)) Then
        With WebBrowser1.Document
            Dim TableElem As HtmlElement = .CreateElement("TABLE")
            .Body.AppendChild(TableElem)

            Dim TableRow As HtmlElement

            ' Create the table header.
            Dim TableHeader As HtmlElement = .CreateElement("THEAD")
            TableElem.AppendChild(TableHeader)
            TableRow = .CreateElement("TR")
            TableHeader.AppendChild(TableRow)

            Dim HeaderElem As HtmlElement
            For Each Col As DataColumn In CustomerTable.Columns
                HeaderElem = .CreateElement("TH")
                HeaderElem.InnerText = Col.ColumnName
                TableRow.AppendChild(HeaderElem)
            Next

            ' Create table rows.
            Dim TableBody As HtmlElement = .CreateElement("TBODY")
            TableElem.AppendChild(TableBody)
            For Each Row As DataRow In CustomerTable.Rows
                TableRow = .CreateElement("TR")
                TableBody.AppendChild(TableRow)
                For Each Col As DataColumn In CustomerTable.Columns
                    Dim Item As Object = Row(Col)
                    Dim TableCell As HtmlElement = .CreateElement("TD")
                    If Not (TypeOf (Item) Is DBNull) Then
                        TableCell.InnerText = CStr(Item)
                    End If
                    TableRow.AppendChild(TableCell)
                Next
            Next

        End With
    End If
End Sub

Hinweise

elementTag kann eines der unterstützten HTML-Tags in Internet Explorer sein, mit Ausnahme von FRAME und IFRAME.

CreateElement gibt ein Element zurück, das nicht an die aktuelle Dokumentstruktur angefügt ist. Wenn Sie das Element dem Dokument hinzufügen möchten, verwenden Sie entweder die Methoden oder AppendChild MethodenInsertAdjacentElement.

Diese Methode wirkt sich nicht auf den Zustand des Quellcodes eines vorhandenen Dokuments aus, wenn Sie den WebBrowser Kontextmenübefehl des Steuerelements "Quelle anzeigen " oder die DocumentText Eigenschaften DocumentStream des WebBrowser Steuerelements verwenden.

Wenn Sie neue Elemente erstellen, CreateElementkönnen Sie bestimmte Eigenschaften wie z Name. B. nicht festlegen. In Fällen, in denen Sie das Name-Attribut festlegen müssen, weisen Sie sie der Eigenschaft eines anderen Objekts im Dokument als HTML zu InnerHtml .

Gilt für:

Weitere Informationen