WebBrowser.Document Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera reprezentację HtmlDocument strony sieci Web aktualnie wyświetlanej w kontrolce WebBrowser .
public:
property System::Windows::Forms::HtmlDocument ^ Document { System::Windows::Forms::HtmlDocument ^ get(); };
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.HtmlDocument Document { get; }
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.HtmlDocument? Document { get; }
[<System.ComponentModel.Browsable(false)>]
member this.Document : System.Windows.Forms.HtmlDocument
Public ReadOnly Property Document As HtmlDocument
Wartość właściwości
Reprezentująca bieżącą stronę lub null
jeśli żadna HtmlDocument strona nie zostanie załadowana.
- Atrybuty
Wyjątki
To WebBrowser wystąpienie nie jest już prawidłowe.
Nie można pobrać odwołania do implementacji interfejsu IWebBrowser2
z bazowego formantu ActiveX WebBrowser
.
Przykłady
Poniższy przykład kodu pokazuje, jak używać Document właściwości w procedurze obsługi dla Navigating zdarzenia w celu określenia, czy formularz strony sieci Web został wypełniony. Jeśli pole wejściowe nie zawiera wartości, nawigacja zostanie anulowana.
Ten przykład wymaga, aby formularz zawierał kontrolkę WebBrowser o nazwie webBrowser1
.
private void Form1_Load(object sender, EventArgs e)
{
webBrowser1.DocumentText =
"<html><body>Please enter your name:<br/>" +
"<input type='text' name='userName'/><br/>" +
"<a href='http://www.microsoft.com'>continue</a>" +
"</body></html>";
webBrowser1.Navigating +=
new WebBrowserNavigatingEventHandler(webBrowser1_Navigating);
}
private void webBrowser1_Navigating(object sender,
WebBrowserNavigatingEventArgs e)
{
System.Windows.Forms.HtmlDocument document =
this.webBrowser1.Document;
if (document != null && document.All["userName"] != null &&
String.IsNullOrEmpty(
document.All["userName"].GetAttribute("value")))
{
e.Cancel = true;
System.Windows.Forms.MessageBox.Show(
"You must enter your name before you can navigate to " +
e.Url.ToString());
}
}
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) _
Handles Me.Load
webBrowser1.DocumentText = _
"<html><body>Please enter your name:<br/>" & _
"<input type='text' name='userName'/><br/>" & _
"<a href='http://www.microsoft.com'>continue</a>" & _
"</body></html>"
End Sub
Private Sub webBrowser1_Navigating( _
ByVal sender As Object, ByVal e As WebBrowserNavigatingEventArgs) _
Handles webBrowser1.Navigating
Dim document As System.Windows.Forms.HtmlDocument = _
webBrowser1.Document
If document IsNot Nothing And _
document.All("userName") IsNot Nothing And _
String.IsNullOrEmpty( _
document.All("userName").GetAttribute("value")) Then
e.Cancel = True
MsgBox("You must enter your name before you can navigate to " & _
e.Url.ToString())
End If
End Sub
Uwagi
Użyj tej właściwości, jeśli chcesz uzyskać dostęp do zawartości strony sieci Web wyświetlanej w kontrolce WebBrowser za pośrednictwem modelu obiektów dokumentów HTML (DOM). Jest to przydatne, na przykład jeśli chcesz używać kontrolek opartych na sieci Web w aplikacji Windows Forms.
Tej właściwości można użyć w połączeniu ObjectForScripting z właściwością, aby zaimplementować dwukierunkową komunikację między stroną internetową wyświetlaną w kontrolce WebBrowser i aplikacji.
HtmlDocument.InvokeScript Użyj metody , aby wywołać metody skryptów zaimplementowane na stronie internetowej z kodu aplikacji klienckiej. Kod skryptowy może uzyskiwać dostęp do aplikacji za pośrednictwem window.external
obiektu, który jest wbudowanym obiektem DOM udostępnianym na potrzeby dostępu do hosta i który mapuje na obiekt określony dla ObjectForScripting właściwości.
Aby uzyskać dostęp do zawartości strony sieci Web jako ciągu, użyj DocumentText właściwości . Aby uzyskać dostęp do zawartości strony sieci Web jako Streamobiektu , użyj DocumentStream właściwości .