HtmlElement Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje prvek HTML uvnitř webové stránky.
public ref class HtmlElement sealed
public sealed class HtmlElement
type HtmlElement = class
Public NotInheritable Class HtmlElement
- Dědičnost
-
HtmlElement
Příklady
Následující příklad kódu ukazuje, jak prozkoumat libovolný dokument HTML a odvodit řetězec popisující prvky HTML s odsazením a čísly na úrovni, které slouží k označení, jak hluboko vnořené prvky jsou v dokumentu. Tento příklad kódu vyžaduje, aby vaše aplikace hostoval WebBrowser ovládací prvek s názvem 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
Poznámky
HtmlElement představuje jakýkoli možný typ prvku v dokumentu HTML, například BODY, TABLEa FORM, mimo jiné. Třída zveřejňuje nejběžnější vlastnosti, které můžete očekávat u všech prvků.
Většina elementů může obsahovat podřízené prvky: další prvky HTML, které jsou umístěny pod nimi. CanHaveChildren Pomocí vlastnosti otestujte, zda daný prvek má podřízené položky a Children kolekce iterovat je. Vlastnost Parent vrátí HtmlElement , ve které je aktuální prvek vnořený.
Často potřebujete přístup k atributům, vlastnostem a metodám v podkladovém prvku, které nejsou přímo vystaveny HtmlElement, jako SRC je atribut prvku IMG nebo Submit metoda v objektu FORM. Tyto GetAttribute metody SetAttribute umožňují načíst a změnit jakýkoli atribut nebo vlastnost konkrétního elementu, zatímco InvokeMember poskytuje přístup k jakýmkoli metodám, které nejsou vystaveny ve spravovaném objektovém modelu dokumentu (DOM). Pokud vaše aplikace má nespravované oprávnění ke kódu, můžete také přistupovat k neexponovaným vlastnostem a metodám s atributem DomElement .
TagName Pomocí vlastnosti otestujte, zda je prvek určitého typu.
Jakýkoli dokument HTML lze upravit za běhu. Pomocí metody HtmlDocumentmůžete vytvořit nové HtmlElement objekty CreateElement a přidat je do jiného prvku pomocí AppendChild nebo InsertAdjacentElement metod. Můžete také vytvořit prvky jako značky HTML a přiřadit je k vlastnosti existujícího elementu InnerHtml .
Vlastnosti
| Name | Description |
|---|---|
| All |
Získá všechny HtmlElementCollection prvky pod aktuální prvek. |
| CanHaveChildren |
Získá hodnotu určující, zda tento prvek může mít podřízené elementy. |
| Children |
Získá všechny podřízené HtmlElementCollection položky aktuální prvek. |
| ClientRectangle |
Získá hranice klientské oblasti prvku v dokumentu HTML. |
| Document |
Získá, HtmlDocument ke kterému tento prvek patří. |
| DomElement |
Získá nespravovaný ukazatel rozhraní pro tento prvek. |
| Enabled |
Získá nebo nastaví, zda uživatel může zadávat data do tohoto prvku. |
| FirstChild |
Získá další prvek pod tímto prvkem ve stromu dokumentu. |
| Id |
Získá nebo nastaví popisek, podle kterého chcete identifikovat prvek. |
| InnerHtml |
Získá nebo nastaví kód HTML pod tímto prvkem. |
| InnerText |
Získá nebo nastaví text přiřazený k prvku. |
| Name |
Získá nebo nastaví název elementu. |
| NextSibling |
Získá další prvek na stejné úrovni jako tento prvek ve stromu dokumentu. |
| OffsetParent |
Získá prvek, ze kterého OffsetRectangle se vypočítá. |
| OffsetRectangle |
Získá umístění elementu vzhledem k jeho nadřazené. |
| OuterHtml |
Získá nebo nastaví kód HTML aktuálního elementu. |
| OuterText |
Získá nebo nastaví text aktuálního prvku. |
| Parent |
Získá nadřazený element aktuálního elementu. |
| ScrollLeft |
Získá nebo nastaví vzdálenost mezi okrajem prvku a levým okrajem jeho obsahu. |
| ScrollRectangle |
Získá rozměry posuvné oblasti prvku. |
| ScrollTop |
Získá nebo nastaví vzdálenost mezi okrajem prvku a horním okrajem jeho obsahu. |
| Style |
Získá nebo nastaví seznam stylů oddělených středníkem pro aktuální prvek. |
| TabIndex |
Získá nebo nastaví umístění tohoto prvku v pořadí ovládacích prvků. |
| TagName |
Získá název značky HTML. |
Metody
| Name | Description |
|---|---|
| AppendChild(HtmlElement) |
Přidá prvek do podstromu jiného prvku. |
| AttachEventHandler(String, EventHandler) |
Přidá obslužnou rutinu události pro pojmenovanou událost v modelu DOM (Document Object Model) HTML. |
| DetachEventHandler(String, EventHandler) |
Odebere obslužnou rutinu události z pojmenované události v modelu DOM (Document Object Model) HTML. |
| Equals(Object) |
Testuje, zda se zadaný objekt rovná aktuálnímu prvku. |
| Focus() |
Umístí uživatelský vstup na aktuální prvek. |
| GetAttribute(String) |
Načte hodnotu pojmenovaného atributu prvku. |
| GetElementsByTagName(String) |
Načte kolekci prvků reprezentovaných ve formátu HTML zadanou |
| GetHashCode() |
Slouží jako hashovací funkce pro určitý typ. |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| InsertAdjacentElement(HtmlElementInsertionOrientation, HtmlElement) |
Vložte nový prvek do modelu DOM (Document Object Model). |
| InvokeMember(String, Object[]) |
Spustí funkci definovanou na aktuální stránce HTML skriptovacím jazykem. |
| InvokeMember(String) |
Spustí nevyexponovanou metodu na podkladovém prvku DOM tohoto elementu. |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| RaiseEvent(String) |
Způsobí, že pojmenovaná událost bude volat všechny registrované obslužné rutiny událostí. |
| RemoveFocus() |
Odebere fokus z aktuálního prvku, pokud má daný prvek fokus. |
| ScrollIntoView(Boolean) |
Prochází dokument obsahující tento prvek, dokud nebude horní nebo dolní okraj tohoto prvku zarovnaný s oknem dokumentu. |
| SetAttribute(String, String) |
Nastaví hodnotu pojmenovaného atributu prvku. |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Operátory
| Name | Description |
|---|---|
| Equality(HtmlElement, HtmlElement) |
Porovná dva prvky rovnosti. |
| Inequality(HtmlElement, HtmlElement) |
Porovná dva HtmlElement objekty pro nerovnost. |
Událost
| Name | Description |
|---|---|
| Click |
Nastane, když uživatel klikne na prvek pomocí levého tlačítka myši. |
| DoubleClick |
Nastane, když uživatel dvakrát klikne na levé tlačítko myši nad prvkem v rychlém sledu. |
| Drag |
Nastane, když uživatel přetáhne text do různých umístění. |
| DragEnd |
Nastane, když uživatel dokončí operaci přetažení. |
| DragLeave |
Nastane, když uživatel již nepřetahuje položku přes tento prvek. |
| DragOver |
Nastane, když uživatel přetáhne text přes prvek. |
| Focusing |
Nastane, když prvek poprvé obdrží uživatelský vstup fokus. |
| GotFocus |
Nastane, když prvek obdržel uživatelský vstup fokus. |
| KeyDown |
Nastane, když uživatel stiskne klávesu na klávesnici. |
| KeyPress |
Nastane, když uživatel stiskne a uvolní klávesu na klávesnici. |
| KeyUp |
Nastane, když uživatel uvolní klávesu na klávesnici. |
| LosingFocus |
Nastane, když prvek ztrácí fokus uživatelského vstupu. |
| LostFocus |
Nastane, když prvek ztratil uživatelský vstup fokus. |
| MouseDown |
Nastane, když uživatel stiskne tlačítko myši. |
| MouseEnter |
Nastane, když uživatel poprvé přesune kurzor myši na aktuální prvek. |
| MouseLeave |
Nastane, když uživatel přesune kurzor myši mimo aktuální prvek. |
| MouseMove |
Nastane, když uživatel přesune kurzor myši přes prvek. |
| MouseOver |
Nastane, když kurzor myši přejde na hranice prvku. |
| MouseUp |
Nastane, když uživatel uvolní tlačítko myši. |