Represents an HTML element inside of a Web page.
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
Thetype exposes the following members.
|All||Gets an HtmlElementCollection of all elements underneath the current element.|
|CanHaveChildren||Gets a value indicating whether this element can have child elements.|
|Children||Gets an HtmlElementCollection of all children of the current element.|
|ClientRectangle||Gets the bounds of the client area of the element in the HTML document.|
|Document||Gets the HtmlDocument to which this element belongs.|
|DomElement||Gets an unmanaged interface pointer for this element.|
|Enabled||Gets or sets whether the user can input data into this element.|
|FirstChild||Gets the next element below this element in the document tree.|
|Id||Gets or sets a label by which to identify the element.|
|InnerHtml||Gets or sets the HTML markup underneath this element.|
|InnerText||Gets or sets the text assigned to the element.|
|Name||Gets or sets the name of the element.|
|NextSibling||Gets the next element at the same level as this element in the document tree.|
|OffsetParent||Gets the element from which OffsetRectangle is calculated.|
|OffsetRectangle||Gets the location of an element relative to its parent.|
|OuterHtml||Gets or sets the current element's HTML code.|
|OuterText||Gets or sets the current element's text.|
|Parent||Gets the current element's parent element.|
|ScrollLeft||Gets or sets the distance between the edge of the element and the left edge of its content.|
|ScrollRectangle||Gets the dimensions of an element's scrollable region.|
|ScrollTop||Gets or sets the distance between the edge of the element and the top edge of its content.|
|Style||Gets or sets a comma-delimited list of styles for the current element.|
|TabIndex||Gets or sets the location of this element in the tab order.|
|TagName||Gets the name of the HTML tag.|
|AppendChild||Adds an element to another element's subtree.|
|AttachEventHandler||Adds an event handler for a named event on the HTML Document Object Model (DOM).|
|DetachEventHandler||Removes an event handler from a named event on the HTML Document Object Model (DOM).|
|Equals||Tests if the supplied object is equal to the current element. (Overrides Object.Equals(Object).)|
|Focus||Puts user input focus on the current element.|
|GetAttribute||Retrieves the value of the named attribute on the element.|
|GetElementsByTagName||Retrieves a collection of elements represented in HTML by the specified HTML tag.|
|GetHashCode||Serves as the default hash function. (Overrides Object.GetHashCode.)|
|GetType||Gets the Type of the current instance. (Inherited from Object.)|
|InsertAdjacentElement||Insert a new element into the Document Object Model (DOM).|
|InvokeMember(String)||Executes an unexposed method on the underlying DOM element of this element.|
|InvokeMember(String, Object())||Executes a function defined in the current HTML page by a scripting language.|
|RaiseEvent||Causes the named event to call all registered event handlers.|
|RemoveFocus||Removes focus from the current element, if that element has focus.|
|ScrollIntoView||Scrolls through the document containing this element until the top or bottom edge of this element is aligned with the document's window.|
|SetAttribute||Sets the value of the named attribute on the element.|
|ToString||Returns a string that represents the current object. (Inherited from Object.)|
|Click||Occurs when the user clicks on the element with the left mouse button.|
|DoubleClick||Occurs when the user clicks the left mouse button over an element twice, in rapid succession.|
|Drag||Occurs when the user drags text to various locations.|
|DragEnd||Occurs when a user finishes a drag operation.|
|DragLeave||Occurs when the user is no longer dragging an item over this element.|
|DragOver||Occurs when the user drags text over the element.|
|Focusing||Occurs when the element first receives user input focus.|
|GotFocus||Occurs when the element has received user input focus.|
|KeyDown||Occurs when the user presses a key on the keyboard.|
|KeyPress||Occurs when the user presses and releases a key on the keyboard.|
|KeyUp||Occurs when the user releases a key on the keyboard.|
|LosingFocus||Occurs when the element is losing user input focus.|
|LostFocus||Occurs when the element has lost user input focus.|
|MouseDown||Occurs when the user presses a mouse button.|
|MouseEnter||Occurs when the user first moves the mouse cursor over the current element.|
|MouseLeave||Occurs when the user moves the mouse cursor off of the current element.|
|MouseMove||Occurs when the user moves the mouse cursor across the element.|
|MouseOver||Occurs when the mouse cursor enters the bounds of the element.|
|MouseUp||Occurs when the user releases a mouse button.|
represents any possible type of element in an HTML document, such as BODY, TABLE, and FORM, among others. The class exposes the most common properties you can expect to find on all elements.
Most elements can have child elements: other HTML elements that are placed underneath them. Use the CanHaveChildren property to test whether a given element has children, and the Children collection to iterate through them. The Parent property returns the in which the current element is nested.
You often need access to attributes, properties, and methods on the underlying element that are not directly exposed by , such as the SRC attribute on an IMG element or the Submit method on a FORM. 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). If your application has unmanaged code permission, you can also access unexposed properties and methods with the DomElement attribute.
Use the TagName property to test whether an element is of a specific type.
Any HTML document can be modified at run time. You can create new objects with the CreateElement method of HtmlDocument, and add them to another element using the AppendChild or InsertAdjacentElement methods. You can also create the elements as HTML tags and assign them to an existing element's InnerHtml property.
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. This code example requires that your application hosts a WebBrowser control named WebBrowser1.
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
Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.