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 element 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 úrovní, 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 elementu v dokumentu HTML, například BODY
, TABLE
a FORM
, mimo jiné. Třída zveřejňuje nejběžnější vlastnosti, které můžete očekávat, že najdete na všech prvcích.
Většina elementů může mít podřízené elementy: další prvky HTML, které jsou umístěny pod nimi. CanHaveChildren Pomocí vlastnosti otestujte, zda daný prvek má podřízené položky, a Children kolekci k iteraci. Vlastnost Parent vrátí HtmlElement hodnotu, ve které je aktuální prvek vnořený.
Často potřebujete přístup k atributům, vlastnostem a metodám na podkladovém prvku, které nejsou přímo vystaveny HtmlElement, jako SRC
je atribut IMG
prvku nebo Submit
metoda na FORM
. Tyto GetAttribute metody SetAttribute umožňují načíst a změnit jakýkoli atribut nebo vlastnost konkrétního prvku, zatímco InvokeMember poskytuje přístup k jakýmkoli metodám, které nejsou vystaveny ve spravovaném modelu objektu 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 konkrétní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í metod.InsertAdjacentElement AppendChild Můžete také vytvořit prvky jako značky HTML a přiřadit je k vlastnosti existujícího elementu InnerHtml .
Vlastnosti
All |
HtmlElementCollection Získá ze všech prvků pod aktuální prvek. |
CanHaveChildren |
Získá hodnotu označující, zda tento prvek může mít podřízené elementy. |
Children |
HtmlElementCollection Získá všechny podřízené položky aktuálního prvku. |
ClientRectangle |
Získá hranice klientské oblasti prvku v dokumentu HTML. |
Document |
HtmlDocument Získá, do kterého tento prvek patří. |
DomElement |
Získá nespravovaný ukazatel rozhraní pro tento prvek. |
Enabled |
Získá nebo nastaví, zda uživatel může do tohoto prvku zadávat data. |
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 je vypočítán. |
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ý prvek aktuálního prvku. |
ScrollLeft |
Získá nebo nastaví vzdálenost mezi okrajem prvku a levým okrajem jeho obsahu. |
ScrollRectangle |
Získá rozměry posouvání oblasti prvku. |
ScrollTop |
Získá nebo nastaví vzdálenost mezi okrajem prvku a horním okrajem jeho obsahu. |
Style |
Získá nebo nastaví středník oddělený seznam stylů pro aktuální prvek. |
TabIndex |
Získá nebo nastaví umístění tohoto prvku v pořadí karet. |
TagName |
Získá název značky HTML. |
Metody
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, jestli se zadaný objekt rovná aktuálnímu prvku. |
Focus() |
Umístí fokus vstupu uživatele 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 značkou |
GetHashCode() |
Slouží jako funkce hash pro určitý typ. |
GetType() |
Type Získá aktuální instanci. (Zděděno od Object) |
InsertAdjacentElement(HtmlElementInsertionOrientation, HtmlElement) |
Vložte nový prvek do modelu DOM (Document Object Model). |
InvokeMember(String) |
Spustí nevyexponovanou metodu na podkladovém prvku DOM tohoto elementu. |
InvokeMember(String, Object[]) |
Spustí funkci definovanou na aktuální stránce HTML skriptovacím jazykem. |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru Object. (Zděděno od Object) |
RaiseEvent(String) |
Způsobí, že pojmenovaná událost zavolá 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 se horní nebo dolní okraj tohoto prvku nezarovná 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
Equality(HtmlElement, HtmlElement) |
Porovná dva prvky rovnosti. |
Inequality(HtmlElement, HtmlElement) |
Porovná dva HtmlElement objekty pro nerovnost. |
událost
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 na prvek, a to rychle po sobě. |
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 už 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ží fokus vstupu uživatele. |
GotFocus |
Nastane, když prvek přijal fokus vstupu uživatele. |
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 ztratí fokus uživatelského vstupu. |
LostFocus |
Nastane, když prvek ztratí fokus uživatelského vstupu. |
MouseDown |
Nastane, když uživatel stiskne tlačítko myši. |
MouseEnter |
Nastane, když uživatel nejprve 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. |