操作說明:存取 Managed HTML 文件物件模型

您可以從兩種類型的應用程式中,存取受管理的「HTML 文件物件模型」(DOM):

  • 執行有受管理之 WebBrowser 控制項的 Windows Forms 應用程式 (.exe)。 這兩種技術為互補,WebBrowser 控制項負責將頁面顯示給使用者,HTML DOM 負責顯示文件的邏輯結構。

  • Windows Forms UserControl 會在 Internet Explorer 中執行。 無論要變更文件的結構,或開啟強制回應對話方塊等等,都可以使用負責顯示您 UserControl 執行所在之頁面的 HTML DOM。

從 Windows Forms 應用程式存取 DOM

  1. 在 Windows Forms 應用程式中執行 WebBrowser 控制項並監視 DocumentCompleted 事件。 如需裝載控制項以及監視事件的詳細資訊,請參閱事件

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

存取 Internet Explorer 中所執行之 UserControl 的 DOM

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

  2. 將下列程式碼放入您 UserControl 的 Load 事件處理常式中:

HtmlDocument doc = null;

private void UserControl1_Load(object sender, EventArgs e)
{
    if (this.Site != null)
    {
        doc = (HtmlDocument)this.Site.GetService(typeof(HtmlDocument));
    }
}
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

穩固程式設計

  1. 透過 WebBrowser 控制項使用 DOM 時,請務必等候 DocumentCompleted 事件發生,再嘗試存取 Document 控制項的 WebBrowser 屬性。 當整份文件全部載入之後,會引發 DocumentCompleted 事件,若您在此之前使用 DOM,可能會導致應用程式執行時發生例外狀況。

.NET Framework 安全性

  1. 您的應用程式或 UserControl 需要完全信任,才能存取受管理的 HTML DOM。 如果您要使用 ClickOnce 部署 Windows Forms 應用程式,您可以使用許可權提升或信任的應用程式部署來要求完全信任;如需詳細資訊,請參閱 保護 ClickOnce 應用程式

另請參閱