HtmlDocument HtmlDocument HtmlDocument HtmlDocument Class

정의

WebBrowser 컨트롤에 호스트된 HTML 문서를 최상위 수준의 프로그래밍 방식으로 액세스할 수 있도록 합니다.Provides top-level programmatic access to an HTML document hosted by the WebBrowser control.

public ref class HtmlDocument sealed
public sealed class HtmlDocument
type HtmlDocument = class
Public NotInheritable Class HtmlDocument
상속
HtmlDocumentHtmlDocumentHtmlDocumentHtmlDocument

예제

다음 코드 예제에서는 Northwind 데이터베이스에서 데이터를 사용 하 여 만들려는 HTML TABLE 동적으로 사용 하 여 CreateElement입니다.The following code example uses data from the Northwind database to create an HTML TABLE dynamically using CreateElement. AppendChild 메서드는 또한, 먼저 셀을 추가 하려면 (TD 요소) 행 (TR 요소), 다음 테이블에 행을 추가 하려면 마지막으로 현재 문서의 끝에 테이블을 추가할.The AppendChild method is also used, first to add cells (TD elements) to rows (TR elements), then to add rows to the table, and finally to append the table to the end of the current document. 이 코드 예제 애플리케이션에 WebBrowser 제어 라는 WebBrowser1합니다.The code example requires that your application has a WebBrowser control named WebBrowser1. 문서를 로드 한 후 코드를 호출 해야 합니다.The code should be called after a document has been loaded.

private void DisplayCustomersTable()
{
    DataSet customersSet = new DataSet();
    DataTable customersTable = null;
    SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM Customers", "Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;");
    sda.Fill(customersTable);
    customersTable = customersSet.Tables[0];

    if (webBrowser1.Document != null)
    {
        HtmlElement tableRow = null;
        HtmlElement headerElem = null;

        HtmlDocument doc = webBrowser1.Document;
        HtmlElement tableElem = doc.CreateElement("TABLE");
        doc.Body.AppendChild(tableElem);

        HtmlElement tableHeader = doc.CreateElement("THEAD");
        tableElem.AppendChild(tableHeader);
        tableRow = doc.CreateElement("TR");
        tableHeader.AppendChild(tableRow);

        foreach (DataColumn col in customersTable.Columns)
        {
            headerElem = doc.CreateElement("TH");
            headerElem.InnerText = col.ColumnName;
            tableRow.AppendChild(headerElem);
        }

        // Create table rows.
        HtmlElement tableBody = doc.CreateElement("TBODY");
        tableElem.AppendChild(tableBody);
        foreach (DataRow dr in customersTable.Rows)
        {
            tableRow = doc.CreateElement("TR");
            tableBody.AppendChild(tableRow);
            foreach (DataColumn col in customersTable.Columns)
            {
                Object dbCell = dr[col];
                HtmlElement tableCell = doc.CreateElement("TD");
                if (!(dbCell is DBNull))
                {
                    tableCell.InnerText = dbCell.ToString();
                }
                tableRow.AppendChild(tableCell);
            }
        }
    }
}
Private Sub DisplayCustomersTable()
    ' Initialize the database connection.
    Dim CustomerData As New DataSet()
    Dim CustomerTable As DataTable

    Try
        Dim DBConn As New SqlConnection("Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;")
        Dim DBQuery As New SqlDataAdapter("SELECT * FROM CUSTOMERS", DBConn)
        DBQuery.Fill(CustomerData)
    Catch dbEX As DataException

    End Try

    CustomerTable = CustomerData.Tables("Customers")

    If (Not (WebBrowser1.Document Is Nothing)) Then
        With WebBrowser1.Document
            Dim TableElem As HtmlElement = .CreateElement("TABLE")
            .Body.AppendChild(TableElem)

            Dim TableRow As HtmlElement

            ' Create the table header. 
            Dim TableHeader As HtmlElement = .CreateElement("THEAD")
            TableElem.AppendChild(TableHeader)
            TableRow = .CreateElement("TR")
            TableHeader.AppendChild(TableRow)

            Dim HeaderElem As HtmlElement
            For Each Col As DataColumn In CustomerTable.Columns
                HeaderElem = .CreateElement("TH")
                HeaderElem.InnerText = Col.ColumnName
                TableRow.AppendChild(HeaderElem)
            Next

            ' Create table rows.
            Dim TableBody As HtmlElement = .CreateElement("TBODY")
            TableElem.AppendChild(TableBody)
            For Each Row As DataRow In CustomerTable.Rows
                TableRow = .CreateElement("TR")
                TableBody.AppendChild(TableRow)
                For Each Col As DataColumn In CustomerTable.Columns
                    Dim Item As Object = Row(Col)
                    Dim TableCell As HtmlElement = .CreateElement("TD")
                    If Not (TypeOf (Item) Is DBNull) Then
                        TableCell.InnerText = CStr(Item)
                    End If
                    TableRow.AppendChild(TableCell)
                Next
            Next

        End With
    End If
End Sub

설명

HtmlDocument Internet Explorer의 문서 개체 라고도 HTML 문서 개체 모델 (DOM) 관련 관리 래퍼를 제공합니다.HtmlDocument provides a managed wrapper around Internet Explorer's document object, also known as the HTML Document Object Model (DOM). 인스턴스를 가져올 수 HtmlDocument 를 통해를 Document 의 속성을 WebBrowser 컨트롤입니다.You obtain an instance of HtmlDocument through the Document property of the WebBrowser control.

HTML 태그를 HTML 문서 내에서 서로 중첩 될 수 있습니다.HTML tags inside of an HTML document can be nested inside one another. HtmlDocument 따라서 자식을 인스턴스인 문서 트리를 나타내는의 HtmlElement 클래스입니다.HtmlDocument thus represents a document tree, whose children are instances of the HtmlElement class. 다음 코드 예제에서는 간단한 HTML 파일을 보여 줍니다.The following code example shows a simple HTML file.

<HTML>  
    <BODY>  
        <DIV name="Span1">Simple HTML Form</DIV>  
        <FORM>  
            <SPAN name="TextLabel">Enter Your Name:</SPAN>  
            <INPUT type="text" size="20" name="Text1">  
        </FORM>  
    </BODY>  
</HTML>  

이 예에서 HtmlDocument 내에서 전체 문서를 나타내는 HTML 태그입니다.In this example, HtmlDocument represents the entire document inside the HTML tags. BODY, DIV, FORM 하 고 SPAN 태그는 개별적으로 표시 됩니다 HtmlElement 개체입니다.The BODY, DIV, FORM and SPAN tags are represented by individual HtmlElement objects.

여러 가지 방법으로이 트리에서 요소에 액세스할 수 있습니다.There are several ways you can access the elements in this tree. 사용 합니다 Body 속성에 액세스를 BODY 태그와 모든 자식입니다.Use the Body property to access the BODY tag and all of its children. 합니다 ActiveElement 속성을 사용 하면는 HtmlElement 사용자 입력 포커스가 있는 HTML 페이지의 요소에 대 한 합니다.The ActiveElement property gives you the HtmlElement for the element on an HTML page that has user input focus. HTML 페이지 내에서 모든 요소는 이름이 있습니다. 합니다 All 각각에 대 한 액세스를 제공 하는 컬렉션 HtmlElement 해당 이름을 인덱스로 사용 하 여 합니다.All elements within an HTML page can have a name; the All collection provides access to each HtmlElement using its name as an index. GetElementsByTagName 반환 합니다는 HtmlElementCollection 모든 HtmlElement 와 같은 지정 된 HTML 태그 이름으로 개체 DIV 또는 TABLE합니다.GetElementsByTagName will return an HtmlElementCollection of all HtmlElement objects with a given HTML tag name, such as DIV or TABLE. GetElementById 단일 돌아갑니다 HtmlElement 제공 하는 고유 ID에 해당 합니다.GetElementById will return the single HtmlElement corresponding to the unique ID that you supply. GetElementFromPoint 돌아갑니다는 HtmlElement 화면에 제공 된 마우스 포인터의 좌표를 찾을 수 있습니다.GetElementFromPoint will return the HtmlElement that can be found on the screen at the supplied mouse pointer coordinates.

사용할 수도 있습니다는 FormsImages 각각 나타내는 사용자 요소를 반복 하는 컬렉션 입력 폼, 그래픽 등입니다.You can also use the Forms and Images collection to iterate through elements that represent user input forms and graphics, respectively.

HtmlDocument Internet Explorer의 DHTML DOM으로 구현 된 관리 되지 않는 인터페이스를 기반으로 합니다. IHTMLDocument, IHTMLDocument2, IHTMLDocument3, 및 IHTMLDocument4합니다.HtmlDocument is based on the unmanaged interfaces implemented by Internet Explorer's DHTML DOM: IHTMLDocument, IHTMLDocument2, IHTMLDocument3, and IHTMLDocument4. 가장 자주 사용 되는 속성에 의해 관리 되지 않는 이러한 인터페이스에 메서드 노출 되 고 HtmlDocument입니다.Only the most frequently used properties and methods on these unmanaged interfaces are exposed by HtmlDocument. 다른 모든 속성 및 메서드를 사용 하 여 직접 액세스할 수 있습니다는 DomDocument 속성에 원하는 관리 되지 않는 인터페이스 포인터에 캐스팅할 수 있습니다.You can access all other properties and methods directly using the DomDocument property, which you can cast to the desired unmanaged interface pointer.

HTML 문서는 다양 한 창 프레임을 포함할 수 있습니다 안에 WebBrowser 제어 합니다.An HTML document may contain frames, which are different windows inside of the WebBrowser control. 각 프레임에는 자체 HTML 페이지가 표시 됩니다.Each frame displays its own HTML page. Frames 컬렉션을 통해 제공 되는 Window 속성.The Frames collection is available through the Window property. 사용할 수도 있습니다는 Window 속성을 표시 된 페이지 크기 조정 문서 스크롤하거나 표시할 경고 및 사용자에 게 메시지를 표시 합니다.You may also use the Window property to resize the displayed page, scroll the document, or display alerts and prompts to the user.

HtmlDocument HTML 페이지를 호스팅하는 경우를 처리 하는 가장 일반적인 이벤트를 노출 합니다.HtmlDocument exposes the most common events you would expect to handle when hosting HTML pages. 인터페이스에서 직접 노출 되지 않는 이벤트를 사용 하 여 이벤트 처리기를 추가할 수 있습니다 AttachEventHandler합니다.For events not exposed directly by the interface, you can add a handler for the event using AttachEventHandler.

HTML 파일에 포함 될 수 있습니다 SCRIPT JScript 또는 VBScript와 같은 액티브 스크립팅 언어 중 하나로 작성 된 코드를 캡슐화 하는 태그입니다.HTML files may contain SCRIPT tags that encapsulate code written in one of the Active Scripting languages, such as JScript or VBScript. InvokeScript 에 정의 된 메서드 및 속성의 실행에 대 한 메서드는 제공 된 SCRIPT 태그입니다.The InvokeScript method provides for execution of properties and methods defined in a SCRIPT tag.

참고

대부분의 속성, 메서드 및 이벤트에 동안 HtmlDocument 가 관리 되지 않는 DOM에서와 동일한 이름을 유지 일부 변경 된의 일관성을 위해는 .NET Framework.NET Framework합니다.While most of the properties, methods, and events on HtmlDocument have kept the same names as they have on the unmanaged DOM, some have been changed for consistency with the .NET Framework.NET Framework.

속성

ActiveElement ActiveElement ActiveElement ActiveElement

현재 입력 포커스가 있는 HtmlElement를 제공합니다.Provides the HtmlElement which currently has user input focus.

ActiveLinkColor ActiveLinkColor ActiveLinkColor ActiveLinkColor

사용자가 클릭할 때 하이퍼링크의 Color를 가져오거나 설정합니다.Gets or sets the Color of a hyperlink when clicked by a user.

All All All All

문서의 모든 HtmlElementCollection 개체를 저장하는 HtmlElement 인스턴스를 가져옵니다.Gets an instance of HtmlElementCollection, which stores all HtmlElement objects for the document.

BackColor BackColor BackColor BackColor

HTML 문서의 배경색을 가져오거나 설정합니다.Gets or sets the background color of the HTML document.

Body Body Body Body

BODY 태그에 대한 HtmlElement를 가져옵니다.Gets the HtmlElement for the BODY tag.

Cookie Cookie Cookie Cookie

이 문서와 연결된 HTTP 쿠키를 가져오거나 설정합니다.Gets or sets the HTTP cookies associated with this document.

DefaultEncoding DefaultEncoding DefaultEncoding DefaultEncoding

현재 문서에 기본적으로 사용되는 인코딩을 가져옵니다.Gets the encoding used by default for the current document.

Domain Domain Domain Domain

보안상의 이유로 이 문서의 도메인을 설명하는 문자열을 가져오거나 설정합니다.Gets or sets the string describing the domain of this document for security purposes.

DomDocument DomDocument DomDocument DomDocument

HtmlDocument에 대한 관리되지 않는 인터페이스 포인터를 가져옵니다.Gets the unmanaged interface pointer for this HtmlDocument.

Encoding Encoding Encoding Encoding

이 문서에 대한 문자 인코딩을 가져오거나 설정합니다.Gets or sets the character encoding for this document.

Focused Focused Focused Focused

문서에 사용자 입력 포커스가 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the document has user input focus.

ForeColor ForeColor ForeColor ForeColor

문서의 텍스트 색을 가져오거나 설정합니다.Gets or sets the text color for the document.

Forms Forms Forms Forms

문서에 있는 모든 <FORM> 요소의 컬렉션을 가져옵니다.Gets a collection of all of the <FORM> elements in the document.

Images Images Images Images

문서에 있는 모든 이미지 태그의 컬렉션을 가져옵니다.Gets a collection of all image tags in the document.

LinkColor LinkColor LinkColor LinkColor

하이퍼링크의 색을 가져오거나 설정합니다.Gets or sets the color of hyperlinks.

Links Links Links Links

이 HTML 문서 내의 모든 하이퍼링크 목록을 가져옵니다.Gets a list of all the hyperlinks within this HTML document.

RightToLeft RightToLeft RightToLeft RightToLeft

현재 문서의 텍스트 방향을 가져오거나 설정합니다.Gets or sets the direction of text in the current document.

Title Title Title Title

현재 HTML 문서의 <TITLE> 태그의 텍스트 값을 가져오거나 설정합니다.Gets or sets the text value of the <TITLE> tag in the current HTML document.

Url Url Url Url

이 문서의 위치를 설명하는 URL을 가져옵니다.Gets the URL describing the location of this document.

VisitedLinkColor VisitedLinkColor VisitedLinkColor VisitedLinkColor

사용자가 이미 방문한 HTML 페이지의 링크 색을 가져오거나 설정합니다.Gets or sets the Color of links to HTML pages that the user has already visited.

Window Window Window Window

이 문서와 연결된 HtmlWindow를 가져옵니다.Gets the HtmlWindow associated with this document.

메서드

AttachEventHandler(String, EventHandler) AttachEventHandler(String, EventHandler) AttachEventHandler(String, EventHandler) AttachEventHandler(String, EventHandler)

명명된 HTML DOM 이벤트에 대한 이벤트 처리기를 추가합니다.Adds an event handler for the named HTML DOM event.

CreateElement(String) CreateElement(String) CreateElement(String) CreateElement(String)

지정한 HTML 태그 형식의 새 HtmlElement를 만듭니다.Creates a new HtmlElement of the specified HTML tag type.

DetachEventHandler(String, EventHandler) DetachEventHandler(String, EventHandler) DetachEventHandler(String, EventHandler) DetachEventHandler(String, EventHandler)

HTML DOM의 명명된 이벤트에서 이벤트 처리기를 제거합니다.Removes an event handler from a named event on the HTML DOM.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

현재 개체와 해당 개체가 같은지를 테스트합니다.Tests the object for equality against the current object.

ExecCommand(String, Boolean, Object) ExecCommand(String, Boolean, Object) ExecCommand(String, Boolean, Object) ExecCommand(String, Boolean, Object)

문서에 대해 지정한 명령을 실행합니다.Executes the specified command against the document.

Focus() Focus() Focus() Focus()

현재 문서에 사용자 입력 포커스를 설정합니다.Sets user input focus on the current document.

GetElementById(String) GetElementById(String) GetElementById(String) GetElementById(String)

요소의 ID 특성을 검색 키로 사용하여 단일 HtmlElement를 검색합니다.Retrieves a single HtmlElement using the element's ID attribute as a search key.

GetElementFromPoint(Point) GetElementFromPoint(Point) GetElementFromPoint(Point) GetElementFromPoint(Point)

지정한 클라이언트 좌표에 있는 HTML 요소를 검색합니다.Retrieves the HTML element located at the specified client coordinates.

GetElementsByTagName(String) GetElementsByTagName(String) GetElementsByTagName(String) GetElementsByTagName(String)

지정한 HTML 태그가 있는 요소의 컬렉션을 검색합니다.Retrieve a collection of elements with the specified HTML tag.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

이 개체의 해시 코드를 검색합니다.Retrieves the hash code for this object.

GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
InvokeScript(String) InvokeScript(String) InvokeScript(String) InvokeScript(String)

HTML 페이지에 정의된 액티브 스크립트 함수를 실행합니다.Executes an Active Scripting function defined in an HTML page.

InvokeScript(String, Object[]) InvokeScript(String, Object[]) InvokeScript(String, Object[]) InvokeScript(String, Object[])

HTML 페이지에 정의된 액티브 스크립트 함수를 실행합니다.Executes an Active Scripting function defined in an HTML page.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
OpenNew(Boolean) OpenNew(Boolean) OpenNew(Boolean) OpenNew(Boolean)

HtmlDocument 메서드와 함께 사용할 새 Write(String)를 가져옵니다.Gets a new HtmlDocument to use with the Write(String) method.

ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)
Write(String) Write(String) Write(String) Write(String)

새 HTML 페이지를 작성합니다.Writes a new HTML page.

이벤트

Click Click Click Click

사용자가 문서의 아무 위치나 클릭하면 발생합니다.Occurs when the user clicks anywhere on the document.

ContextMenuShowing ContextMenuShowing ContextMenuShowing ContextMenuShowing

사용자가 문서의 상황에 맞는 메뉴를 표시하도록 요청할 때 발생합니다.Occurs when the user requests to display the document's context menu.

Focusing Focusing Focusing Focusing

문서에 포커스가 지정되기 전에 발생합니다.Occurs before focus is given to the document.

LosingFocus LosingFocus LosingFocus LosingFocus

포커스가 컨트롤을 벗어나는 동안 발생합니다.Occurs while focus is leaving a control.

MouseDown MouseDown MouseDown MouseDown

사용자가 왼쪽 마우스 단추를 클릭하면 발생합니다.Occurs when the user clicks the left mouse button.

MouseLeave MouseLeave MouseLeave MouseLeave

마우스가 문서를 더 이상 가리키지 않을 때 발생합니다.Occurs when the mouse is no longer hovering over the document.

MouseMove MouseMove MouseMove MouseMove

마우스를 문서 위로 이동하면 발생합니다.Occurs when the mouse is moved over the document.

MouseOver MouseOver MouseOver MouseOver

마우스를 문서 위로 이동하면 발생합니다.Occurs when the mouse is moved over the document.

MouseUp MouseUp MouseUp MouseUp

사용자가 왼쪽 마우스 단추를 놓으면 발생합니다.Occurs when the user releases the left mouse button.

Stop Stop Stop Stop

다른 웹 페이지에 대한 탐색이 중단되면 발생합니다.Occurs when navigation to another Web page is halted.

연산자

Equality(HtmlDocument, HtmlDocument) Equality(HtmlDocument, HtmlDocument) Equality(HtmlDocument, HtmlDocument) Equality(HtmlDocument, HtmlDocument)

지정된 HtmlDocument 인스턴스가 같은 값을 표시하는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether the specified HtmlDocument instances represent the same value.

Inequality(HtmlDocument, HtmlDocument) Inequality(HtmlDocument, HtmlDocument) Inequality(HtmlDocument, HtmlDocument) Inequality(HtmlDocument, HtmlDocument)

지정된 HtmlDocument 인스턴스가 같은 값을 표시하지 않는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether the specified HtmlDocument instances do not represent the same value.

적용 대상

추가 정보