Porady: uzyskiwanie dostępu do modelu DOM (Document Object Model) zarządzanych dokumentów HTML
Dostęp do zarządzanego modelu obiektów dokumentów HTML (DOM) można uzyskać z dwóch typów aplikacji:
Aplikacja Windows Forms (.exe), która hostuje zarządzaną WebBrowser kontrolkę. Te dwie technologie uzupełniają się wzajemnie, a WebBrowser kontrolka wyświetlającą stronę użytkownikowi i DOM HTML reprezentującą strukturę logiczną dokumentu.
Formularze systemu UserControl Windows hostowane w programie Internet Explorer. Dostęp do modelu DOM HTML reprezentujący stronę, na której UserControl jest hostowana, w celu zmiany struktury dokumentu lub otwartych modalnych okien dialogowych, między innymi.
Aby uzyskać dostęp do modelu DOM z poziomu aplikacji Windows Forms
Hostowanie kontrolki WebBrowser w aplikacji Windows Forms i monitorowanie zdarzenia DocumentCompleted . Aby uzyskać szczegółowe informacje na temat hostowania kontrolek i monitorowania zdarzeń, zobacz Zdarzenia.
Pobierz element HtmlDocument dla bieżącej strony, korzystając Document z właściwości kontrolki WebBrowser .
Aby uzyskać dostęp do modelu DOM z poziomu elementu UserControl hostowanego w programie Internet Explorer
Utwórz własną niestandardową klasę pochodną UserControl klasy . Aby uzyskać więcej informacji, zobacz How to: Author Composite Controls (Instrukcje: tworzenie kontrolek złożonych).
Umieść następujący kod wewnątrz programu obsługi zdarzeń ładowania dla elementu UserControl:
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
Niezawodne programowanie
- W przypadku używania modelu DOM za pomocą kontrolki WebBrowser należy zawsze czekać, aż DocumentCompleted zdarzenie nastąpi przed podjęciem próby uzyskania dostępu Document do właściwości kontrolki WebBrowser . Zdarzenie DocumentCompleted jest zgłaszane po załadowaniu całego dokumentu. Jeśli wcześniej używasz modelu DOM, ryzyko wystąpienia wyjątku czasu wykonywania w aplikacji.
Zabezpieczenia.NET Framework
- Aplikacja lub UserControl wymaga pełnego zaufania w celu uzyskania dostępu do zarządzanego modelu DOM HTML. Jeśli wdrażasz aplikację Windows Forms przy użyciu technologii ClickOnce, możesz zażądać pełnego zaufania przy użyciu podniesienia uprawnień lub wdrożenia zaufanej aplikacji; Aby uzyskać szczegółowe informacje, zobacz Zabezpieczanie aplikacji ClickOnce.
Zobacz też
.NET Desktop feedback
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla