HtmlElement Classe

Definição

Representa um elemento HTML dentro de uma página Web.

public ref class HtmlElement sealed
public sealed class HtmlElement
type HtmlElement = class
Public NotInheritable Class HtmlElement
Herança
HtmlElement

Exemplos

O exemplo de código seguinte mostra como examinar um documento HTML arbitrário e derivar uma cadeia que descreva os elementos HTML, com números de indentação e nível usados para indicar quão profundamente os elementos estão aninhados no documento. Este exemplo de código exige que a sua aplicação aloje um WebBrowser controlo chamado WebBrowser1.

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

Observações

HtmlElement representa qualquer tipo possível de elemento num documento HTML, como BODY, TABLE, e FORM, entre outros. A classe expõe as propriedades mais comuns que pode esperar encontrar em todos os elementos.

A maioria dos elementos pode ter elementos filhos: outros elementos HTML que são colocados por baixo deles. Use a CanHaveChildren propriedade para testar se um dado elemento tem filhos, e a Children coleção para iterar através deles. A Parent propriedade devolve o HtmlElement em que o elemento atual está aninhado.

Muitas vezes é necessário aceder a atributos, propriedades e métodos no elemento subjacente que não são diretamente expostos por HtmlElement, como o SRC atributo num IMG elemento ou o Submit método num FORM. Os GetAttribute métodos and SetAttribute permitem-lhe recuperar e alterar qualquer atributo ou propriedade num elemento específico, ao mesmo tempo InvokeMember que dão acesso a quaisquer métodos não expostos no Modelo de Objetos de Documento (DOM) gerido. Se a sua aplicação tiver permissão de código não gerido, também pode aceder a propriedades e métodos não expostos com o DomElement atributo.

Use a TagName propriedade para testar se um elemento é de um tipo específico.

Qualquer documento HTML pode ser modificado em tempo de execução. Pode criar novos HtmlElement objetos com o CreateElement método de HtmlDocument, e adicioná-los a outro elemento usando os AppendChild métodos ou InsertAdjacentElement . Também podes criar os elementos como etiquetas HTML e atribuí-los à propriedade de InnerHtml um elemento existente.

Propriedades

Name Description
All

Obtém um HtmlElementCollection de todos os elementos abaixo do elemento atual.

CanHaveChildren

Obtém um valor que indica se este elemento pode ter elementos filhos.

Children

Obtém uma HtmlElementCollection de todos os filhos do elemento atual.

ClientRectangle

Obtém os limites da área cliente do elemento no documento HTML.

Document

Obtém a HtmlDocument que este elemento pertence.

DomElement

Recebe um ponteiro de interface não gerido para este elemento.

Enabled

Obtém ou define se o utilizador pode introduzir dados neste elemento.

FirstChild

Obtém o próximo elemento abaixo deste elemento na árvore de documentos.

Id

Obtém ou define uma etiqueta para identificar o elemento.

InnerHtml

Obtém ou define a marcação HTML por baixo deste elemento.

InnerText

Obtém ou define o texto atribuído ao elemento.

Name

Recebe ou define o nome do elemento.

NextSibling

Obtém o próximo elemento ao mesmo nível que este elemento na árvore de documentos.

OffsetParent

Obtém o elemento a partir do qual OffsetRectangle é calculado.

OffsetRectangle

Obtém a localização de um elemento em relação ao seu pai.

OuterHtml

Obtém ou define o código HTML do elemento atual.

OuterText

Obtém ou define o texto do elemento atual.

Parent

Obtém o elemento pai do elemento atual.

ScrollLeft

Obtém ou define a distância entre a aresta do elemento e a aresta esquerda do seu conteúdo.

ScrollRectangle

Obtém as dimensões da região deslocável de um elemento.

ScrollTop

Obtém ou define a distância entre a aresta do elemento e a aresta superior do seu conteúdo.

Style

Obtém ou define uma lista delimitada por ponto e vírgula de estilos para o elemento atual.

TabIndex

Obtém ou define a localização deste elemento na ordem de tabulação.

TagName

Recebe o nome da tag HTML.

Métodos

Name Description
AppendChild(HtmlElement)

Adiciona um elemento à subárvore de outro elemento.

AttachEventHandler(String, EventHandler)

Adiciona um gestor de eventos para um evento nomeado no Modelo de Objetos de Documento HTML (DOM).

DetachEventHandler(String, EventHandler)

Remove um gestor de eventos de um evento nomeado no Modelo de Objetos de Documento HTML (DOM).

Equals(Object)

Testa se o objeto fornecido é igual ao elemento atual.

Focus()

Coloca o input do utilizador focado no elemento atual.

GetAttribute(String)

Recupera o valor do atributo nomeado no elemento.

GetElementsByTagName(String)

Recupera uma coleção de elementos representados em HTML pela etiqueta especificada HTML .

GetHashCode()

Serve como função de hash para um tipo específico.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InsertAdjacentElement(HtmlElementInsertionOrientation, HtmlElement)

Insira um novo elemento no Modelo de Objeto do Documento (DOM).

InvokeMember(String, Object[])

Executa uma função definida na página HTML atual por uma linguagem de scripting.

InvokeMember(String)

Executa um método não exposto sobre o elemento DOM subjacente desse elemento.

MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
RaiseEvent(String)

Faz com que o evento nomeado chame todos os gestores de eventos registados.

RemoveFocus()

Remove foco do elemento atual, se esse elemento tiver foco.

ScrollIntoView(Boolean)

Percorre o documento que contém este elemento até que a borda superior ou inferior deste elemento esteja alinhada com a janela do documento.

SetAttribute(String, String)

Define o valor do atributo nomeado no elemento.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Operadores

Name Description
Equality(HtmlElement, HtmlElement)

Compara dois elementos para a igualdade.

Inequality(HtmlElement, HtmlElement)

Compara dois HtmlElement objetos para a desigualdade.

evento

Name Description
Click

Ocorre quando o utilizador clica no elemento com o botão esquerdo do rato.

DoubleClick

Ocorre quando o utilizador clica no botão esquerdo do rato sobre um elemento duas vezes, em rápida sucessão.

Drag

Ocorre quando o utilizador arrasta texto para vários locais.

DragEnd

Ocorre quando um utilizador termina uma operação de arrasto.

DragLeave

Ocorre quando o utilizador já não arrasta um item sobre este elemento.

DragOver

Ocorre quando o utilizador arrasta texto sobre o elemento.

Focusing

Ocorre quando o elemento recebe pela primeira vez o foco de entrada do utilizador.

GotFocus

Ocorre quando o elemento recebeu o foco de entrada do utilizador.

KeyDown

Ocorre quando o utilizador pressiona uma tecla no teclado.

KeyPress

Ocorre quando o utilizador pressiona e larga uma tecla no teclado.

KeyUp

Ocorre quando o utilizador solta uma tecla no teclado.

LosingFocus

Ocorre quando o elemento está a perder o foco da entrada do utilizador.

LostFocus

Ocorre quando o elemento perdeu o foco da entrada do utilizador.

MouseDown

Ocorre quando o utilizador pressiona um botão do rato.

MouseEnter

Ocorre quando o utilizador move o cursor do rato pela primeira vez sobre o elemento atual.

MouseLeave

Ocorre quando o utilizador move o cursor do rato para fora do elemento atual.

MouseMove

Ocorre quando o utilizador move o cursor do rato pelo elemento.

MouseOver

Ocorre quando o cursor do rato entra nos limites do elemento.

MouseUp

Ocorre quando o utilizador solta um botão do rato.

Aplica-se a

Ver também