WebBrowser.Document Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient un HtmlDocument représentant la page web affichée actuellement dans le contrôle 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
Valeur de propriété
HtmlDocument représentant la page active, ou null
si aucune page n'est chargée.
- Attributs
Exceptions
Cette instance de WebBrowser n'est plus valide.
Une référence à une implémentation de l'interface IWebBrowser2
n'a pas pu être récupérée du contrôle WebBrowser
ActiveX sous-jacent.
Exemples
L’exemple de code suivant montre comment utiliser la Document propriété dans un gestionnaire pour l’événement Navigating afin de déterminer si un formulaire de page Web a été rempli. Si le champ d’entrée ne contient pas de valeur, la navigation est annulée.
Cet exemple nécessite que votre formulaire contienne un WebBrowser contrôle appelé 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
Remarques
Utilisez cette propriété lorsque vous souhaitez accéder au contenu d’une page Web affichée dans le WebBrowser contrôle via le modèle DOM (Document Object Model) HTML. Cela est utile, par exemple, lorsque vous souhaitez utiliser des contrôles web dans votre application Windows Forms.
Vous pouvez utiliser cette propriété, en combinaison avec la propriété , pour implémenter la ObjectForScripting communication bidirectionnelle entre une page Web affichée dans le WebBrowser contrôle et votre application. Utilisez la méthode pour appeler des HtmlDocument.InvokeScript méthodes de script implémentées dans une page Web à partir du code de votre application cliente. Votre code de script peut accéder à votre application via l’objet window.external
, qui est un objet DOM intégré fourni pour l’accès à l’hôte et mappé à un objet que vous spécifiez pour la ObjectForScripting propriété .
Pour accéder au contenu d’une page Web sous forme de chaîne, utilisez la DocumentText propriété . Pour accéder au contenu d’une page Web en tant que Stream, utilisez la DocumentStream propriété .