Freigeben über


HtmlDocument.CreateElement(String) Methode

Definition

Erstellt ein neues HtmlElement mit dem angegebenen HTML-Tagtyp.

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 vom angegebenen Tagtyp.

Beispiele

Im folgenden Codebeispiel werden Daten aus der Northwind-Datenbank verwendet, um mithilfe CreateElementvon eine HTML-Tabelle zu erstellen. Die AppendChild -Methode wird auch verwendet, um zuerst Zellen (TD Elemente) zu Zeilen (TR -Elemente) hinzuzufügen, dann zeilen zur Tabelle hinzuzufügen und schließlich, um die Tabelle am Ende des aktuellen Dokuments anzufügen. Das Codebeispiel erfordert, dass Ihre Anwendung über ein WebBrowser Steuerelement mit dem Namen verfügt 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

elementTagkann eines der unterstützten HTML-Tags im Internet Explorer mit Ausnahme FRAME von und IFRAMEsein.

CreateElement gibt ein Element zurück, das an die aktuelle Dokumentstruktur nicht angefügt ist. Verwenden Sie zum Hinzufügen des Elements zum Dokument entweder die -Methode oder AppendChild die InsertAdjacentElement -Methode.

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

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

Gilt für:

Weitere Informationen