HtmlElement 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
웹 페이지 내의 HTML 요소를 나타냅니다.
public ref class HtmlElement sealed
public sealed class HtmlElement
type HtmlElement = class
Public NotInheritable Class HtmlElement
- 상속
-
HtmlElement
예제
다음 코드 예제에서는 임의의 HTML 문서를 검사하고 HTML 요소를 설명하는 문자열을 파생하는 방법을 보여 줍니다. 들여쓰기 및 수준 번호는 요소가 문서에 얼마나 깊이 중첩되어 있는지를 나타내는 데 사용됩니다. 이 코드 예제에서는 애플리케이션 호스트를 WebBrowser 제어 라는 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
설명
HtmlElement 는 HTML 문서에서 가능한 모든 유형의 요소(예: BODY
, TABLE
및 FORM
기타)를 나타냅니다. 클래스는 모든 요소에서 찾을 수 있는 가장 일반적인 속성을 노출합니다.
대부분의 요소에는 자식 요소( 그 아래에 배치되는 다른 HTML 요소)가 있을 수 있습니다. CanHaveChildren 속성을 사용하여 지정된 요소에 자식이 있는지 여부를 테스트하고 Children 컬렉션을 통해 반복합니다. 이 속성은 Parent 현재 요소가 중첩된 값을 반환 HtmlElement 합니다.
요소의 특성 또는 메서드와 같이 직접 노출 HtmlElement되지 않는 기본 요소의 SRC
특성, 속성 및 메서드에 IMG
Submit
FORM
액세스해야 하는 경우가 많습니다. 및 GetAttribute SetAttribute 메서드를 사용하면 특정 요소의 특성 또는 속성을 검색하고 변경할 수 있으며 InvokeMember 관리되는 DOM(문서 개체 모델)에 노출되지 않은 메서드에 액세스할 수 있습니다. 노출 되지 않은 속성 및 메서드를 액세스 애플리케이션에 비관리 코드 권한, 하는 경우는 DomElement 특성입니다.
TagName 속성을 사용하여 요소가 특정 형식인지 여부를 테스트합니다.
모든 HTML 문서는 런타임에 수정할 수 있습니다. 메서드를 사용하여 새 HtmlElement 개체를 CreateElement 만들고 또는 InsertAdjacentElement 메서드HtmlDocument를 사용하여 다른 요소에 AppendChild 추가할 수 있습니다. HTML 태그로 요소를 만들고 기존 요소의 InnerHtml 속성에 할당할 수도 있습니다.
속성
All |
현재 요소의 아래에 있는 모든 요소의 HtmlElementCollection을 가져옵니다. |
CanHaveChildren |
이 요소가 자식 요소를 가질 수 있는지를 나타내는 값을 가져옵니다. |
Children |
현재 요소에 대한 모든 자식의 HtmlElementCollection을 가져옵니다. |
ClientRectangle |
HTML 문서에 있는 요소의 클라이언트 영역 경계를 가져옵니다. |
Document |
이 요소가 속한 HtmlDocument 를 가져옵니다. |
DomElement |
이 요소에 대한 비관리 인터페이스 포인터를 가져옵니다. |
Enabled |
사용자가 이 요소에 데이터를 입력할 수 있는지를 가져오거나 설정합니다. |
FirstChild |
문서 트리에서 이 요소의 아래에 있는 다음 요소를 가져옵니다. |
Id |
요소를 식별하는 기준이 되는 레이블을 가져오거나 설정합니다. |
InnerHtml |
이 요소 아래에 있는 HTML 태그를 가져오거나 설정합니다. |
InnerText |
요소에 할당된 텍스트를 가져오거나 설정합니다. |
Name |
요소의 이름을 가져오거나 설정합니다. |
NextSibling |
문서 트리에서 이 요소와 같은 수준에 있는 다음 요소를 가져옵니다. |
OffsetParent |
OffsetRectangle 이 계산된 요소를 가져옵니다. |
OffsetRectangle |
부모 요소를 기준으로 요소의 위치를 가져옵니다. |
OuterHtml |
현재 요소의 HTML 코드를 가져오거나 설정합니다. |
OuterText |
현재 요소의 텍스트를 가져오거나 설정합니다. |
Parent |
현재 요소의 부모 요소를 가져옵니다. |
ScrollLeft |
요소의 가장자리와 요소 내용의 왼쪽 가장자리 사이의 거리를 가져오거나 설정합니다. |
ScrollRectangle |
요소의 스크롤 가능한 영역의 크기를 가져옵니다. |
ScrollTop |
요소의 가장자리와 요소 내용의 위쪽 가장자리 사이의 거리를 가져오거나 설정합니다. |
Style |
현재 요소에 대한 세미콜론으로 구분된 스타일 목록을 가져오거나 설정합니다. |
TabIndex |
탭 순서에서 이 요소의 위치를 가져오거나 설정합니다. |
TagName |
HTML 태그의 이름을 가져옵니다. |
메서드
AppendChild(HtmlElement) |
요소를 다른 요소의 하위 트리에 추가합니다. |
AttachEventHandler(String, EventHandler) |
HTML DOM(문서 개체 모델)의 명명된 이벤트에 대한 이벤트 처리기를 추가합니다. |
DetachEventHandler(String, EventHandler) |
HTML DOM(문서 개체 모델)의 명명된 이벤트에서 이벤트 처리기를 제거합니다. |
Equals(Object) |
제공된 개체가 현재 요소와 같은지 테스트합니다. |
Focus() |
현재 요소에 사용자 입력 포커스를 놓습니다. |
GetAttribute(String) |
요소에서 명명된 특성의 값을 검색합니다. |
GetElementsByTagName(String) |
HTML에서 지정된 |
GetHashCode() |
특정 유형에 대한 해시 함수로 사용합니다. |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
InsertAdjacentElement(HtmlElementInsertionOrientation, HtmlElement) |
새 요소를 DOM(문서 개체 모델)에 삽입합니다. |
InvokeMember(String) |
이 요소의 내부 DOM 요소에 대해 노출되지 않은 메서드를 실행합니다. |
InvokeMember(String, Object[]) |
스크립트 언어로 현재 HTML 페이지에 정의된 함수를 실행합니다. |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
RaiseEvent(String) |
명명된 이벤트에서 등록된 이벤트 처리기를 모두 호출하게 됩니다. |
RemoveFocus() |
현재 요소에 포커스가 있으면 현재 요소에서 포커스를 제거합니다. |
ScrollIntoView(Boolean) |
이 요소의 위쪽 또는 아래쪽 가장자리가 문서 창과 맞춰질 때까지 이 요소가 들어 있는 문서를 스크롤합니다. |
SetAttribute(String, String) |
요소에서 명명된 특성의 값을 설정합니다. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
연산자
Equality(HtmlElement, HtmlElement) |
두 요소가 같은지 비교합니다. |
Inequality(HtmlElement, HtmlElement) |
두 HtmlElement 개체가 다른지 비교합니다. |
이벤트
Click |
마우스 왼쪽 단추로 요소를 클릭할 때 발생합니다. |
DoubleClick |
요소를 마우스 왼쪽 단추로 연속하여 두 번 빠르게 클릭할 때 발생합니다. |
Drag |
사용자가 텍스트를 여러 위치로 끌 때 발생합니다. |
DragEnd |
사용자가 끌기 작업을 완료할 때 발생합니다. |
DragLeave |
사용자가 이 요소 위로 항목을 더 이상 끌지 않을 때 발생합니다. |
DragOver |
사용자가 텍스트를 요소 위로 끌 때 발생합니다. |
Focusing |
요소에서 사용자 입력 포커스를 처음 받을 때 발생합니다. |
GotFocus |
요소에서 사용자 입력 포커스를 받았을 때 발생합니다. |
KeyDown |
사용자가 키보드의 키를 누를 때 발생합니다. |
KeyPress |
사용자가 키보드의 키를 눌렀다가 놓을 때 발생합니다. |
KeyUp |
사용자가 키보드의 키를 놓을 때 발생합니다. |
LosingFocus |
요소에서 사용자 입력 포커스를 잃을 때 발생합니다. |
LostFocus |
요소에서 사용자 입력 포커스를 잃었을 때 발생합니다. |
MouseDown |
사용자가 마우스 단추를 누를 때 발생합니다. |
MouseEnter |
마우스 커서가 현재 요소 위를 처음 이동할 때 발생합니다. |
MouseLeave |
마우스 커서가 현재 요소를 벗어나 이동할 때 발생합니다. |
MouseMove |
마우스 커서가 요소에서 이동할 때 발생합니다. |
MouseOver |
마우스 커서가 요소의 경계 내로 들어올 때 발생합니다. |
MouseUp |
사용자가 마우스 단추를 놓을 때 발생합니다. |