HtmlElement.InsertAdjacentElement Method

Definition

Insert a new element into the Document Object Model (DOM).

C#
public System.Windows.Forms.HtmlElement InsertAdjacentElement(System.Windows.Forms.HtmlElementInsertionOrientation orient, System.Windows.Forms.HtmlElement newElement);
C#
public System.Windows.Forms.HtmlElement? InsertAdjacentElement(System.Windows.Forms.HtmlElementInsertionOrientation orientation, System.Windows.Forms.HtmlElement newElement);
C#
public System.Windows.Forms.HtmlElement? InsertAdjacentElement(System.Windows.Forms.HtmlElementInsertionOrientation orient, System.Windows.Forms.HtmlElement newElement);

Parameters

orientorientation
HtmlElementInsertionOrientation

Where to insert this element in relation to the current element.

newElement
HtmlElement

The new element to insert.

Returns

The HtmlElement that was just inserted. If insertion failed, this will return null.

Examples

The following code example inserts a DIV element into the top of every page that users view outside of the ADatum.com server. The example requires that your form contains a WebBrowser control named WebBrowser1. Your sample must also import the namespace System.Text.RegularExpressions.

C#
public void AddDivMessage()
{
    Uri currentUri = new Uri(webBrowser1.Url.ToString());
    String hostName = null;

    // Ensure we have a host name, and not just an IP, against which to test.
    if (!(currentUri.HostNameType == UriHostNameType.Dns))
    {
        DnsPermission permit = new DnsPermission(System.Security.Permissions.PermissionState.Unrestricted);
        permit.Assert();

        IPHostEntry hostEntry = System.Net.Dns.GetHostEntry(currentUri.Host);
        hostName = hostEntry.HostName;
    }
    else
    {
        hostName = currentUri.Host;
    }

    if (!hostName.Contains("adatum.com"))
    {
        AddTopPageMessage("You are viewing a web site other than ADatum.com. " +
            "Please exercise caution, and ensure your Web surfing complies with all " +
            "corporate regulations as laid out in the company handbook.");
    }
}

private void AddTopPageMessage(String message)
{
    if (webBrowser1.Document != null)
    {
        HtmlDocument doc = webBrowser1.Document;

        // Do not insert the warning again if it already exists. 
        HtmlElementCollection returnedElems = doc.All.GetElementsByName("ADatumWarningDiv");
        if ((returnedElems != null) && (returnedElems.Count > 0))
        {
            return;
        }

        HtmlElement divElem = doc.CreateElement("DIV");
        divElem.Name = "ADatumWarningDiv";
        divElem.Style = "background-color:black;color:white;font-weight:bold;width:100%;";
        divElem.InnerText = message;

        divElem = doc.Body.InsertAdjacentElement(HtmlElementInsertionOrientation.AfterBegin, divElem);
    }
}

Remarks

Do not call this method until after the DocumentCompleted event on the WebBrowser control has occurred. Calling this method before then can result in an exception, as the document will not have finished loading.

Whether a value of HtmlElementInsertionOrientation is valid will depend on the type of the element. For example, AfterBegin is valid if the element is a DIV, but not if it is a SCRIPT or IMG element, neither of which can contain child elements.

Applies to

Produkt Verzie
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

See also