Sdílet prostřednictvím


WebBrowser.Document Vlastnost

Definice

HtmlDocument Získá reprezentaci webové stránky aktuálně zobrazené v ovládacím WebBrowser prvku.

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

Hodnota vlastnosti

Představuje HtmlDocument aktuální stránku nebo null pokud není načtena žádná stránka.

Atributy

Výjimky

Tato WebBrowser instance již není platná.

Odkaz na implementaci IWebBrowser2 rozhraní nelze načíst ze základního ovládacího prvku ActiveX WebBrowser .

Příklady

Následující příklad kódu ukazuje, jak použít Document vlastnost v obslužné rutině Navigating události k určení, zda byl formulář webové stránky vyplněn. Pokud vstupní pole neobsahuje hodnotu, navigace se zruší.

Tento příklad vyžaduje, aby formulář obsahuje ovládací prvek volaný WebBrowserwebBrowser1.

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

Poznámky

Tuto vlastnost použijte, pokud chcete získat přístup k obsahu webové stránky zobrazené v ovládacím WebBrowser prvku prostřednictvím modelu DOM (HTML document object model). To je užitečné například v případě, že chcete ve své aplikaci Windows Forms používat webové ovládací prvky.

Tuto vlastnost můžete použít v kombinaci s ObjectForScripting vlastností k implementaci obousměrné komunikace mezi webovou stránkou zobrazenou v ovládacím WebBrowser prvku a vaší aplikací. Metodu HtmlDocument.InvokeScript použijte k volání metod skriptu implementovaných na webové stránce z kódu klientské aplikace. Váš skriptovací kód má přístup k aplikaci prostřednictvím objektu window.external , což je integrovaný objekt MODELU DOM určený pro přístup k hostiteli a který se mapuje na objekt, který zadáte pro ObjectForScripting vlastnost.

Pokud chcete získat přístup k obsahu webové stránky jako řetězec, použijte DocumentText vlastnost. Chcete-li získat přístup k obsahu webové stránky jako , Streampoužijte DocumentStream vlastnost.

Platí pro

Viz také