共用方式為


HOW TO:存取 Managed HTML 文件物件模型

您可以從兩種應用程式類型存取 Managed HTML 文件物件模型 (DOM):

  • 裝載 Managed WebBrowser 控制項的 Windows Form 應用程式 (.exe)。 這兩種技術可彼此互相實作,然後以 WebBrowser 控制項對使用者顯示頁面並且以 HTML DOM 表示文件的邏輯結構。

  • 在 Internet Explorer 內裝載的 Windows Form UserControl。 您可以在許多其他網頁中存取裝載 UserControl 的網頁的 HTML DOM,以變更文件結構或開啟強制回應對話方塊。

若要從 Windows Form 應用程式存取 DOM

  1. 請在 Windows Form 應用程式內裝載 WebBrowser 控制項,然後監視 DocumentCompleted 事件。 如需裝載控制項和監視事件的詳細資訊,請參閱使用事件

  2. 存取 WebBrowser 控制項的 Document 屬性,以擷取目前頁面的 HtmlDocument

若要從裝載於 Internet Explorer 內的 UserControl 存取 DOM

  1. 請建立 UserControl 類別的自訂衍生類別。 如需詳細資訊,請參閱 HOW TO:撰寫複合控制項

  2. 請將以下程式碼放置在 UserControl 的載入事件處理常式中:

Private Sub UserControl1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    If (Me.Site IsNot Nothing) Then
        Dim Doc As HtmlDocument = CType(Me.Site.GetService(Type.GetType("System.Windows.Forms.HtmlDocument")), HtmlDocument)
    End If
End Sub
        HtmlDocument doc = null;

        private void UserControl1_Load(object sender, EventArgs e)
        {
            if (this.Site != null)
            {
                doc = (HtmlDocument)this.Site.GetService(typeof(HtmlDocument));
            }
        }

穩固程式設計

  1. 當透過 WebBrowser 控制項使用 DOM 時,應一律等到 DocumentCompleted 事件發生之後,才開始嘗試存取 WebBrowser 控制項的 Document 屬性。 DocumentCompleted 事件是在完成載入整份文件之後才發生,如果在這之前使用 DOM,則必須承擔在應用程式中引起執行階段例外狀況的風險。

安全性

  1. 應用程式或 UserControl 將需要完全信任才能存取 Managed HTML DOM。 如果您正在使用 ClickOnce 部署 Windows Form 應用程式,則可以使用「權限提高」或「信任的應用程式部署」來要求完全信任。如需詳細資訊,請參閱 保護 ClickOnce 應用程式

請參閱

其他資源

使用 Managed HTML 文件物件模型