HtmlElement Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa um elemento HTML em uma página da 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 a seguir mostra como examinar um documento HTML arbitrário e derivar uma cadeia de caracteres que descreve os elementos HTML, com recuo e números de nível usados para indicar o quão profundamente aninhados os elementos estão no documento. Este exemplo de código requer que seu aplicativo hospede um WebBrowser controle 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
Comentários
HtmlElement representa qualquer tipo possível de elemento em um documento HTML, como BODY
, TABLE
e FORM
, entre outros. A classe expõe as propriedades mais comuns que você pode esperar encontrar em todos os elementos.
A maioria dos elementos pode ter elementos filho: outros elementos HTML que são colocados sob eles. Use a CanHaveChildren propriedade para testar se um determinado elemento tem filhos e a Children coleção para iterar por meio deles. A Parent propriedade retorna a HtmlElement na qual o elemento atual está aninhado.
Geralmente, você precisa de acesso a atributos, propriedades e métodos no elemento subjacente que não são expostos diretamente, HtmlElementcomo o SRC
atributo em um IMG
elemento ou o Submit
método em um FORM
. Os GetAttribute métodos e SetAttribute os métodos permitem que você recupere e altere qualquer atributo ou propriedade em um elemento específico, enquanto InvokeMember fornece acesso a quaisquer métodos não expostos no DOM (Modelo de Objeto de Documento) gerenciado. Se o aplicativo tiver permissão de código não gerenciada, você também poderá acessar 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. Você pode criar novos HtmlElement objetos com o CreateElement método de HtmlDocument, e adicioná-los a outro elemento usando os métodos ou InsertAdjacentElement os AppendChild métodos. Você também pode criar os elementos como marcas HTML e atribuí-los à propriedade de InnerHtml um elemento existente.
Propriedades
All |
Obtém um HtmlElementCollection de todos os elementos sob o elemento atual. |
CanHaveChildren |
Obtém um valor que indica se esse elemento pode ter elementos filho. |
Children |
Obtém um HtmlElementCollection de todos os filhos do elemento atual. |
ClientRectangle |
Obtém os limites da área de cliente do elemento no documento HTML. |
Document |
Obtém o HtmlDocument ao qual esse elemento pertence. |
DomElement |
Obtém o ponteiro da interface não gerenciada deste elemento. |
Enabled |
Obtém ou define se o usuário pode inserir dados nesse elemento. |
FirstChild |
Obtém o próximo elemento abaixo desse elemento na árvore de documentos. |
Id |
Obtém ou define um rótulo pelo qual o elemento é identificado. |
InnerHtml |
Obtém ou define a marcação HTML embaixo desse elemento. |
InnerText |
Obtém ou define o texto atribuído ao elemento. |
Name |
Obtém ou define o nome do elemento. |
NextSibling |
Obtém o próximo elemento no mesmo nível que esse elemento na árvore de documentos. |
OffsetParent |
Obtém o elemento do qual OffsetRectangle é calculado. |
OffsetRectangle |
Obtém o local de um elemento em relação a 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 do pai do elemento atual. |
ScrollLeft |
Obtém ou define a distância entre a borda do elemento e a borda esquerda do conteúdo dele. |
ScrollRectangle |
Obtém as dimensões da região do elemento que permite rolagem. |
ScrollTop |
Obtém ou define a distância entre a borda do elemento e a borda 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 |
Obtém o nome da marca HTML. |
Métodos
AppendChild(HtmlElement) |
Adiciona um elemento a outra subárvore do elemento. |
AttachEventHandler(String, EventHandler) |
Adiciona um manipulador de eventos para um evento nomeado no DOM (Modelo de Objeto do Documento) HTML. |
DetachEventHandler(String, EventHandler) |
Remove um manipulador de eventos de um evento nomeado no DOM (Modelo de Objeto do Documento) HTML. |
Equals(Object) |
Testa se o objeto fornecido é igual ao elemento atual. |
Focus() |
Coloca o foco de entrada do usuário no elemento atual. |
GetAttribute(String) |
Recupera o valor do atributo nomeado no elemento. |
GetElementsByTagName(String) |
Recupera uma coleção de elementos representada em HTML pela marca |
GetHashCode() |
Serve como uma função hash para um tipo particular. |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
InsertAdjacentElement(HtmlElementInsertionOrientation, HtmlElement) |
Insira um novo elemento no DOM (Modelo de Objeto do Documento). |
InvokeMember(String) |
Executa um método não exposto no elemento DOM subjacente desse elemento. |
InvokeMember(String, Object[]) |
Executa uma função definida na página HTML atual por uma linguagem de script. |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
RaiseEvent(String) |
Faz com que o evento nomeado chame todos os manipuladores de eventos registrados. |
RemoveFocus() |
Remove o foco do elemento atual, se esse elemento tem foco. |
ScrollIntoView(Boolean) |
Rola pelo documento que contém esse elemento até que a borda superior ou inferior desse elemento esteja alinhada à janela do documento. |
SetAttribute(String, String) |
Define o valor do atributo nomeado no elemento. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Operadores
Equality(HtmlElement, HtmlElement) |
Compara dois elementos quanto à igualdade. |
Inequality(HtmlElement, HtmlElement) |
Compara dois objetos HtmlElement quanto à desigualdade. |
Eventos
Click |
Ocorre quando o usuário clica no elemento com o botão esquerdo do mouse. |
DoubleClick |
Ocorre quando o usuário clica sobre um elemento duas vezes em sucessão rápida com o botão esquerdo do mouse. |
Drag |
Ocorre quando o usuário arrasta o texto para vários locais. |
DragEnd |
Ocorre quando um usuário termina uma operação de arrastar. |
DragLeave |
Ocorre quando o usuário não está mais arrastando um item sobre este elemento. |
DragOver |
Ocorre quando o usuário arrasta o texto sobre o elemento. |
Focusing |
Ocorre quando o elemento recebe o foco de entrada do usuário pela primeira vez. |
GotFocus |
Ocorre quando o elemento recebeu o foco de entrada do usuário. |
KeyDown |
Ocorre quando o usuário pressiona uma tecla no teclado. |
KeyPress |
Ocorre quando o usuário pressiona e libera uma tecla no teclado. |
KeyUp |
Ocorre quando o usuário libera uma tecla no teclado. |
LosingFocus |
Ocorre quando o elemento está perdendo o foco de entrada do usuário. |
LostFocus |
Ocorre quando o elemento perdeu o foco de entrada do usuário. |
MouseDown |
Ocorre quando o usuário pressiona um botão do mouse. |
MouseEnter |
Ocorre quando o usuário move o cursor do mouse sobre o elemento atual pela primeira vez. |
MouseLeave |
Ocorre quando o usuário move o cursor do mouse para fora do elemento atual. |
MouseMove |
Ocorre quando o usuário move o cursor do mouse cruzando o elemento. |
MouseOver |
Ocorre quando o cursor do mouse entra nos limites do elemento. |
MouseUp |
Ocorre quando o usuário libera um botão do mouse. |