操作說明:存取 Managed HTML 文件物件模型
您可以從兩種類型的應用程式中,存取受管理的「HTML 文件物件模型」(DOM):
執行有受管理之 WebBrowser 控制項的 Windows Forms 應用程式 (.exe)。 這兩種技術為互補,WebBrowser 控制項負責將頁面顯示給使用者,HTML DOM 負責顯示文件的邏輯結構。
Windows Forms UserControl 會在 Internet Explorer 中執行。 無論要變更文件的結構,或開啟強制回應對話方塊等等,都可以使用負責顯示您 UserControl 執行所在之頁面的 HTML DOM。
從 Windows Forms 應用程式存取 DOM
在 Windows Forms 應用程式中執行 WebBrowser 控制項並監視 DocumentCompleted 事件。 如需裝載控制項以及監視事件的詳細資訊,請參閱事件。
存取 HtmlDocument 控制項的 Document 屬性,以擷取目前頁面的 WebBrowser。
存取 Internet Explorer 中所執行之 UserControl 的 DOM
建立您自己之 UserControl 類別的衍生類別。 如需詳細資訊,請參閱如何:撰寫複合控制項。
將下列程式碼放入您 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
穩固程式設計
- 透過 WebBrowser 控制項使用 DOM 時,請務必等候 DocumentCompleted 事件發生,再嘗試存取 Document 控制項的 WebBrowser 屬性。 當整份文件全部載入之後,會引發 DocumentCompleted 事件,若您在此之前使用 DOM,可能會導致應用程式執行時發生例外狀況。
.NET Framework 安全性
- 您的應用程式或 UserControl 需要完全信任,才能存取受管理的 HTML DOM。 如果您要使用 ClickOnce 部署 Windows Forms 應用程式,您可以使用許可權提升或信任的應用程式部署來要求完全信任;如需詳細資訊,請參閱 保護 ClickOnce 應用程式 。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應