Condividi tramite


HtmlElement Classe

Definizione

Rappresenta un elemento HTML all'interno di una pagina Web.

public ref class HtmlElement sealed
public sealed class HtmlElement
type HtmlElement = class
Public NotInheritable Class HtmlElement
Ereditarietà
HtmlElement

Esempio

Nell'esempio di codice seguente viene illustrato come esaminare un documento HTML arbitrario e derivare una stringa che descrive gli elementi HTML, con i numeri di rientro e livello usati per indicare in che modo annidati gli elementi sono presenti nel documento. Questo esempio di codice richiede che l'applicazione ospita un WebBrowser controllo denominato 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

Commenti

HtmlElement rappresenta qualsiasi tipo possibile di elemento in un documento HTML, ad esempio BODY, TABLEe FORM, tra gli altri. La classe espone le proprietà più comuni che è possibile aspettare di trovare su tutti gli elementi.

La maggior parte degli elementi può avere elementi figlio: altri elementi HTML posizionati sotto di essi. Utilizzare la CanHaveChildren proprietà per verificare se un determinato elemento ha elementi figlio e la Children raccolta per scorrere tali elementi. La Parent proprietà restituisce l'oggetto in cui viene annidato l'elemento HtmlElement corrente.

Spesso è necessario accedere a attributi, proprietà e metodi sull'elemento sottostante che non sono esposti direttamente da HtmlElement, ad esempio l'attributo SRC su un IMG elemento o il Submit metodo in un FORMoggetto . I GetAttribute metodi e SetAttribute consentono di recuperare e modificare qualsiasi attributo o proprietà in un elemento specifico, mentre InvokeMember fornisce l'accesso a qualsiasi metodo non esposto nel DOM (Document Object Model) gestito. Se l'applicazione ha autorizzazioni di codice non gestite, è anche possibile accedere a proprietà e metodi non esposti con l'attributo DomElement .

Utilizzare la TagName proprietà per verificare se un elemento è di un tipo specifico.

Qualsiasi documento HTML può essere modificato in fase di esecuzione. È possibile creare nuovi HtmlElement oggetti con il CreateElement metodo di HtmlDocumente aggiungerli a un altro elemento usando i AppendChild metodi o InsertAdjacentElement . È anche possibile creare gli elementi come tag HTML e assegnarli alla proprietà di InnerHtml un elemento esistente.

Proprietà

All

Ottiene un oggetto HtmlElementCollection di tutti gli elementi sottostanti all'elemento corrente.

CanHaveChildren

Ottiene un valore che indica se l'elemento corrente può avere elementi figli.

Children

Ottiene un oggetto HtmlElementCollection di tutti gli elementi figlio dell'elemento corrente.

ClientRectangle

Ottiene i limiti dell'area client dell'elemento nel documento HTML.

Document

Ottiene l'oggetto HtmlDocument a cui appartiene l'elemento.

DomElement

Ottiene un puntatore a un'interfaccia non gestita relativo a questo elemento.

Enabled

Ottiene o imposta un valore che indica se l'utente può immettere dati nell'elemento corrente.

FirstChild

Ottiene l'elemento immediatamente sottostante all'elemento corrente nell'albero del documento.

Id

Ottiene o imposta un'etichetta in base a cui identificare l'elemento.

InnerHtml

Ottiene o imposta il markup HTML sottostante dell'elemento corrente.

InnerText

Ottiene o imposta il testo assegnato all'elemento.

Name

Ottiene o imposta il nome dell'elemento.

NextSibling

Ottiene il successivo elemento allo stesso livello dell'elemento corrente nell'albero del documento.

OffsetParent

Ottiene l'elemento a partire dal quale viene calcolata la proprietà OffsetRectangle.

OffsetRectangle

Ottiene la posizione di un elemento rispetto al relativo elemento padre.

OuterHtml

Ottiene o imposta il codice HTML dell'elemento corrente.

OuterText

Ottiene o imposta il testo dell'elemento corrente.

Parent

Ottiene l'elemento padre dell'elemento corrente.

ScrollLeft

Ottiene o imposta la distanza tra il bordo dell'elemento e il bordo sinistro del relativo contenuto.

ScrollRectangle

Imposta le dimensioni dell'area di scorrimento di un elemento.

ScrollTop

Ottiene o imposta la distanza tra il bordo dell'elemento e il bordo superiore del relativo contenuto.

Style

Ottiene o imposta un elenco delimitato da punti e virgola di stili per l'elemento corrente.

TabIndex

Ottiene o imposta la posizione dell'elemento corrente in ordine di tabulazione.

TagName

Ottiene il nome del tag HTML.

Metodi

AppendChild(HtmlElement)

Aggiunge un elemento al sottoalbero di un altro elemento.

AttachEventHandler(String, EventHandler)

Aggiunge un gestore eventi per un evento denominato nel DOM (Document Object Model) HTML.

DetachEventHandler(String, EventHandler)

Rimuove un gestore eventi da un evento denominato nel DOM (Document Object Model) HTML.

Equals(Object)

Verifica se l'oggetto fornito è uguale all'oggetto corrente.

Focus()

Assegna all'elemento corrente lo stato attivo per l'input.

GetAttribute(String)

Recupera il valore dell'attributo denominato sull'elemento.

GetElementsByTagName(String)

Recupera una raccolta di elementi rappresentati in HTML dal tag HTML specificato.

GetHashCode()

Svolge una funzione hash per un tipo particolare.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
InsertAdjacentElement(HtmlElementInsertionOrientation, HtmlElement)

Inserisce un nuovo elemento nel DOM (Document Object Model).

InvokeMember(String)

Esegue un metodo non esposto sull'elemento DOM sottostante di questo elemento.

InvokeMember(String, Object[])

Esegue una funzione definita nella pagina HTML corrente mediante un linguaggio di script.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
RaiseEvent(String)

Determina la chiamata da parte dell'evento denominato di tutti i gestori eventi registrati.

RemoveFocus()

Rimuove lo stato attivo dall'elemento corrente, se presente.

ScrollIntoView(Boolean)

Scorre il documento contenente l'elemento corrente fino a quando il bordo superiore o inferiore di tale elemento non è allineato con la finestra del documento.

SetAttribute(String, String)

Imposta il valore dell'attributo denominato sull'elemento.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Operatori

Equality(HtmlElement, HtmlElement)

Confronta due elementi per stabilirne l'uguaglianza.

Inequality(HtmlElement, HtmlElement)

Confronta due oggetti HtmlElement per stabilirne la disuguaglianza.

Eventi

Click

Si verifica quando l'utente fa clic sull'elemento con il pulsante sinistro del mouse.

DoubleClick

Si verifica quando l'utente fa rapidamente doppio clic su un elemento con il pulsante sinistro del mouse.

Drag

Si verifica quando l'utente trascina il testo in diverse posizioni.

DragEnd

Si verifica quando un utente termina un'operazione di trascinamento.

DragLeave

Si verifica quando l'utente interrompe il trascinamento di un elemento sull'elemento corrente.

DragOver

Si verifica quando l'utente trascina del testo sopra l'elemento.

Focusing

Si verifica quando all'elemento viene assegnato per la prima volta lo stato attivo per l'input dell'utente.

GotFocus

Si verifica quando all'elemento è stato assegnato lo stato attivo per l'input dell'utente.

KeyDown

Si verifica quando l'utente preme un tasto della tastiera.

KeyPress

Si verifica quando l'utente preme e rilascia un tasto della tastiera.

KeyUp

Si verifica quando l'utente rilascia un tasto della tastiera.

LosingFocus

Si verifica quando l'elemento perde lo stato attivo per l'input dell'utente.

LostFocus

Si verifica quando l'elemento ha perso lo stato attivo per l'input dell'utente.

MouseDown

Si verifica quando l'utente preme un pulsante del mouse.

MouseEnter

Si verifica quando l'utente sposta per la prima volta il cursore del mouse sull'elemento corrente.

MouseLeave

Si verifica quando l'utente sposta il cursore del mouse dall'elemento corrente.

MouseMove

Si verifica quando l'utente sposta il cursore del mouse sull'elemento.

MouseOver

Si verifica quando il cursore del mouse entra nell'area dell'elemento.

MouseUp

Si verifica quando l'utente rilascia un pulsante del mouse.

Si applica a

Vedi anche