HtmlElement.InsertAdjacentElement(HtmlElementInsertionOrientation, HtmlElement) Метод

Определение

Вставляет новый элемент в модель DOM.Insert a new element into the Document Object Model (DOM).

public:
 System::Windows::Forms::HtmlElement ^ InsertAdjacentElement(System::Windows::Forms::HtmlElementInsertionOrientation orient, System::Windows::Forms::HtmlElement ^ newElement);
public System.Windows.Forms.HtmlElement InsertAdjacentElement (System.Windows.Forms.HtmlElementInsertionOrientation orient, System.Windows.Forms.HtmlElement newElement);
member this.InsertAdjacentElement : System.Windows.Forms.HtmlElementInsertionOrientation * System.Windows.Forms.HtmlElement -> System.Windows.Forms.HtmlElement
Public Function InsertAdjacentElement (orient As HtmlElementInsertionOrientation, newElement As HtmlElement) As HtmlElement

Параметры

orient
HtmlElementInsertionOrientation

Место вставки этого элемента относительно текущего элемента.Where to insert this element in relation to the current element.

newElement
HtmlElement

Новый элемент, который требуется вставить.The new element to insert.

Возвращаемое значение

HtmlElement

Вставленный элемент HtmlElement.The HtmlElement that was just inserted. Если не удалось вставить элемент, возвращается значение null.If insertion failed, this will return null.

Примеры

В следующем примере кода элемент вставляется DIV в верхнюю часть каждой страницы, которую пользователь просматривает за пределами сервера adatum.com.The following code example inserts a DIV element into the top of every page that users view outside of the ADatum.com server. В примере требуется, чтобы форма содержала WebBrowser элемент управления с именем WebBrowser1 .The example requires that your form contains a WebBrowser control named WebBrowser1. Пример также должен импортировать пространство имен System.Text.RegularExpressions .Your sample must also import the namespace System.Text.RegularExpressions.

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);
    }
}
Private Sub AddDivMessage()
    Dim CurrentUri As New Uri(WebBrowser1.Url.ToString())
    Dim HostName As String

    ' Ensure we have a host name, and not just an IP, against which to test.
    If (Not CurrentUri.HostNameType = UriHostNameType.Dns) Then
        Dim Permit As New DnsPermission(System.Security.Permissions.PermissionState.Unrestricted)
        Permit.Assert()

        Dim HostEntry As IPHostEntry = System.Net.Dns.GetHostEntry(CurrentUri.Host)
        HostName = HostEntry.HostName
    Else
        HostName = CurrentUri.Host
    End If

    If (Not HostName.Contains("adatum.com")) Then
        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.")
    End If
End Sub

Private Sub AddTopPageMessage(ByVal Message As String)
    If (WebBrowser1.Document IsNot Nothing) Then
        With WebBrowser1.Document
            ' Do not insert the warning again if it already exists. 
            Dim ReturnedElems As HtmlElementCollection = .All.GetElementsByName("ADatumWarningDiv")
            If (Not (ReturnedElems Is Nothing) And (ReturnedElems.Count > 0)) Then
                Exit Sub
            End If

            Dim DivElem As HtmlElement = .CreateElement("DIV")
            DivElem.Name = "ADatumWarningDiv"
            DivElem.Style = "background-color:black;color:white;font-weight:bold;width:100%;"
            DivElem.InnerText = Message

            DivElem = .Body.InsertAdjacentElement(HtmlElementInsertionOrientation.AfterBegin, DivElem)
        End With
    End If
End Sub

Комментарии

Не вызывайте этот метод до тех пор, пока не будет вызвано DocumentCompleted событие в WebBrowser элементе управления.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.

Является ли значение HtmlElementInsertionOrientation допустимым, зависит от типа элемента.Whether a value of HtmlElementInsertionOrientation is valid will depend on the type of the element. Например, AfterBegin допустим, если элемент является DIV , но не является SCRIPT IMG элементом или, ни один из которых не может содержать дочерние элементы.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.

Применяется к