HtmlElement Classe

Definizione

Rappresenta un elemento HTML all'interno di una pagina Web.Represents an HTML element inside of a Web page.

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 come derivare una stringa che descrive gli elementi HTML, con i numeri di rientro e di livello utilizzati per indicare il livello di annidamento degli elementi nel documento.The following code example shows how to examine an arbitrary HTML document and derive a string describing the HTML elements, with indentation and level numbers used to indicate how deeply nested the elements are in the document. Questo esempio di codice richiede che l'applicazione ospiti un WebBrowser controllo denominato WebBrowser1 .This code example requires that your application hosts a WebBrowser control named 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 possibile tipo di elemento in un documento HTML, ad esempio BODY , TABLE e FORM , tra gli altri.HtmlElement represents any possible type of element in an HTML document, such as BODY, TABLE, and FORM, among others. La classe espone le proprietà più comuni che si prevede di trovare su tutti gli elementi.The class exposes the most common properties you can expect to find on all elements.

La maggior parte degli elementi può avere elementi figlio: altri elementi HTML posizionati sotto di essi.Most elements can have child elements: other HTML elements that are placed underneath them. Utilizzare la CanHaveChildren proprietà per verificare se un determinato elemento ha elementi figlio e la Children raccolta per scorrerli.Use the CanHaveChildren property to test whether a given element has children, and the Children collection to iterate through them. La Parent proprietà restituisce l'oggetto HtmlElement in cui l'elemento corrente è annidato.The Parent property returns the HtmlElement in which the current element is nested.

Spesso è necessario accedere a attributi, proprietà e metodi sull'elemento sottostante che non sono esposti direttamente da HtmlElement , ad esempio l' SRC attributo su un IMG elemento o il Submit metodo su un oggetto FORM .You often need access to attributes, properties, and methods on the underlying element that are not directly exposed by HtmlElement, such as the SRC attribute on an IMG element or the Submit method on a FORM. I GetAttribute SetAttribute metodi e consentono di recuperare e modificare qualsiasi attributo o proprietà in un elemento specifico, mentre InvokeMember fornisce l'accesso a qualsiasi metodo non esposto nel Document Object Model gestito (Dom).The GetAttribute and SetAttribute methods enable you to retrieve and alter any attribute or property on a specific element, while InvokeMember provides access to any methods not exposed in the managed Document Object Model (DOM). Se l'applicazione dispone dell'autorizzazione per il codice non gestito, è anche possibile accedere alle proprietà e ai metodi non esposti con l' DomElement attributo.If your application has unmanaged code permission, you can also access unexposed properties and methods with the DomElement attribute.

Utilizzare la TagName proprietà per verificare se un elemento è di un tipo specifico.Use the TagName property to test whether an element is of a specific type.

Qualsiasi documento HTML può essere modificato in fase di esecuzione.Any HTML document can be modified at run time. È possibile creare nuovi HtmlElement oggetti con il CreateElement metodo di HtmlDocument e aggiungerli a un altro elemento usando i AppendChild InsertAdjacentElement metodi o.You can create new HtmlElement objects with the CreateElement method of HtmlDocument, and add them to another element using the AppendChild or InsertAdjacentElement methods. È anche possibile creare gli elementi come tag HTML e assegnarli alla proprietà di un elemento esistente InnerHtml .You can also create the elements as HTML tags and assign them to an existing element's InnerHtml property.

Proprietà

All

Ottiene un oggetto HtmlElementCollection di tutti gli elementi sottostanti all'elemento corrente.Gets an HtmlElementCollection of all elements underneath the current element.

CanHaveChildren

Ottiene un valore che indica se l'elemento corrente può avere elementi figli.Gets a value indicating whether this element can have child elements.

Children

Ottiene un oggetto HtmlElementCollection di tutti gli elementi figlio dell'elemento corrente.Gets an HtmlElementCollection of all children of the current element.

ClientRectangle

Ottiene i limiti dell'area client dell'elemento nel documento HTML.Gets the bounds of the client area of the element in the HTML document.

Document

Ottiene l'oggetto HtmlDocument a cui appartiene l'elemento.Gets the HtmlDocument to which this element belongs.

DomElement

Ottiene un puntatore a un'interfaccia non gestita relativo a questo elemento.Gets an unmanaged interface pointer for this element.

Enabled

Ottiene o imposta un valore che indica se l'utente può immettere dati nell'elemento corrente.Gets or sets whether the user can input data into this element.

FirstChild

Ottiene l'elemento immediatamente sottostante all'elemento corrente nell'albero del documento.Gets the next element below this element in the document tree.

Id

Ottiene o imposta un'etichetta in base a cui identificare l'elemento.Gets or sets a label by which to identify the element.

InnerHtml

Ottiene o imposta il markup HTML sottostante dell'elemento corrente.Gets or sets the HTML markup underneath this element.

InnerText

Ottiene o imposta il testo assegnato all'elemento.Gets or sets the text assigned to the element.

Name

Ottiene o imposta il nome dell'elemento.Gets or sets the name of the element.

NextSibling

Ottiene il successivo elemento allo stesso livello dell'elemento corrente nell'albero del documento.Gets the next element at the same level as this element in the document tree.

OffsetParent

Ottiene l'elemento a partire dal quale viene calcolata la proprietà OffsetRectangle.Gets the element from which OffsetRectangle is calculated.

OffsetRectangle

Ottiene la posizione di un elemento rispetto al relativo elemento padre.Gets the location of an element relative to its parent.

OuterHtml

Ottiene o imposta il codice HTML dell'elemento corrente.Gets or sets the current element's HTML code.

OuterText

Ottiene o imposta il testo dell'elemento corrente.Gets or sets the current element's text.

Parent

Ottiene l'elemento padre dell'elemento corrente.Gets the current element's parent element.

ScrollLeft

Ottiene o imposta la distanza tra il bordo dell'elemento e il bordo sinistro del relativo contenuto.Gets or sets the distance between the edge of the element and the left edge of its content.

ScrollRectangle

Imposta le dimensioni dell'area di scorrimento di un elemento.Gets the dimensions of an element's scrollable region.

ScrollTop

Ottiene o imposta la distanza tra il bordo dell'elemento e il bordo superiore del relativo contenuto.Gets or sets the distance between the edge of the element and the top edge of its content.

Style

Ottiene o imposta un elenco delimitato da punti e virgola di stili per l'elemento corrente.Gets or sets a semicolon-delimited list of styles for the current element.

TabIndex

Ottiene o imposta la posizione dell'elemento corrente in ordine di tabulazione.Gets or sets the location of this element in the tab order.

TagName

Ottiene il nome del tag HTML.Gets the name of the HTML tag.

Metodi

AppendChild(HtmlElement)

Aggiunge un elemento al sottoalbero di un altro elemento.Adds an element to another element's subtree.

AttachEventHandler(String, EventHandler)

Aggiunge un gestore eventi per un evento denominato nel DOM (Document Object Model) HTML.Adds an event handler for a named event on the HTML Document Object Model (DOM).

DetachEventHandler(String, EventHandler)

Rimuove un gestore eventi da un evento denominato nel DOM (Document Object Model) HTML.Removes an event handler from a named event on the HTML Document Object Model (DOM).

Equals(Object)

Verifica se l'oggetto fornito è uguale all'oggetto corrente.Tests if the supplied object is equal to the current element.

Focus()

Assegna all'elemento corrente lo stato attivo per l'input.Puts user input focus on the current element.

GetAttribute(String)

Recupera il valore dell'attributo denominato sull'elemento.Retrieves the value of the named attribute on the element.

GetElementsByTagName(String)

Recupera una raccolta di elementi rappresentati in HTML dal tag HTML specificato.Retrieves a collection of elements represented in HTML by the specified HTML tag.

GetHashCode()

Svolge una funzione hash per un tipo particolare.Serves as a hash function for a particular type.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
InsertAdjacentElement(HtmlElementInsertionOrientation, HtmlElement)

Inserisce un nuovo elemento nel DOM (Document Object Model).Insert a new element into the Document Object Model (DOM).

InvokeMember(String)

Esegue un metodo non esposto sull'elemento DOM sottostante di questo elemento.Executes an unexposed method on the underlying DOM element of this element.

InvokeMember(String, Object[])

Esegue una funzione definita nella pagina HTML corrente mediante un linguaggio di script.Executes a function defined in the current HTML page by a scripting language.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
RaiseEvent(String)

Determina la chiamata da parte dell'evento denominato di tutti i gestori eventi registrati.Causes the named event to call all registered event handlers.

RemoveFocus()

Rimuove lo stato attivo dall'elemento corrente, se presente.Removes focus from the current element, if that element has focus.

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.Scrolls through the document containing this element until the top or bottom edge of this element is aligned with the document's window.

SetAttribute(String, String)

Imposta il valore dell'attributo denominato sull'elemento.Sets the value of the named attribute on the element.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Ereditato da Object)

Operatori

Equality(HtmlElement, HtmlElement)

Confronta due elementi per stabilirne l'uguaglianza.Compares two elements for equality.

Inequality(HtmlElement, HtmlElement)

Confronta due oggetti HtmlElement per stabilirne la disuguaglianza.Compares two HtmlElement objects for inequality.

Eventi

Click

Si verifica quando l'utente fa clic sull'elemento con il pulsante sinistro del mouse.Occurs when the user clicks on the element with the left mouse button.

DoubleClick

Si verifica quando l'utente fa rapidamente doppio clic su un elemento con il pulsante sinistro del mouse.Occurs when the user clicks the left mouse button over an element twice, in rapid succession.

Drag

Si verifica quando l'utente trascina il testo in diverse posizioni.Occurs when the user drags text to various locations.

DragEnd

Si verifica quando un utente termina un'operazione di trascinamento.Occurs when a user finishes a drag operation.

DragLeave

Si verifica quando l'utente interrompe il trascinamento di un elemento sull'elemento corrente.Occurs when the user is no longer dragging an item over this element.

DragOver

Si verifica quando l'utente trascina del testo sopra l'elemento.Occurs when the user drags text over the element.

Focusing

Si verifica quando all'elemento viene assegnato per la prima volta lo stato attivo per l'input dell'utente.Occurs when the element first receives user input focus.

GotFocus

Si verifica quando all'elemento è stato assegnato lo stato attivo per l'input dell'utente.Occurs when the element has received user input focus.

KeyDown

Si verifica quando l'utente preme un tasto della tastiera.Occurs when the user presses a key on the keyboard.

KeyPress

Si verifica quando l'utente preme e rilascia un tasto della tastiera.Occurs when the user presses and releases a key on the keyboard.

KeyUp

Si verifica quando l'utente rilascia un tasto della tastiera.Occurs when the user releases a key on the keyboard.

LosingFocus

Si verifica quando l'elemento perde lo stato attivo per l'input dell'utente.Occurs when the element is losing user input focus.

LostFocus

Si verifica quando l'elemento ha perso lo stato attivo per l'input dell'utente.Occurs when the element has lost user input focus.

MouseDown

Si verifica quando l'utente preme un pulsante del mouse.Occurs when the user presses a mouse button.

MouseEnter

Si verifica quando l'utente sposta per la prima volta il cursore del mouse sull'elemento corrente.Occurs when the user first moves the mouse cursor over the current element.

MouseLeave

Si verifica quando l'utente sposta il cursore del mouse dall'elemento corrente.Occurs when the user moves the mouse cursor off of the current element.

MouseMove

Si verifica quando l'utente sposta il cursore del mouse sull'elemento.Occurs when the user moves the mouse cursor across the element.

MouseOver

Si verifica quando il cursore del mouse entra nell'area dell'elemento.Occurs when the mouse cursor enters the bounds of the element.

MouseUp

Si verifica quando l'utente rilascia un pulsante del mouse.Occurs when the user releases a mouse button.

Si applica a