WebBrowser.Navigating Événement
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.
Se produit avant que le contrôle WebBrowser navigue vers un nouveau document.
public:
event System::Windows::Forms::WebBrowserNavigatingEventHandler ^ Navigating;
public event System.Windows.Forms.WebBrowserNavigatingEventHandler Navigating;
public event System.Windows.Forms.WebBrowserNavigatingEventHandler? Navigating;
member this.Navigating : System.Windows.Forms.WebBrowserNavigatingEventHandler
Public Custom Event Navigating As WebBrowserNavigatingEventHandler
Public Event Navigating As WebBrowserNavigatingEventHandler
Type d'événement
Exemples
L’exemple de code suivant montre comment utiliser un gestionnaire pour l’événement afin d’annuler la Navigating navigation lorsqu’un formulaire de page web n’a pas été rempli. La Document propriété est utilisée pour déterminer si le champ d’entrée de formulaire contient une valeur.
Cet exemple nécessite que votre formulaire contienne un WebBrowser contrôle appelé webBrowser1
et que votre classe de formulaire dispose d’un ComVisibleAttribute qui le rend accessible à COM.
Pour obtenir un exemple de code complet dans lequel vous pouvez coller le code suivant, consultez Guide pratique pour ajouter des fonctionnalités de navigateur web à une application Windows Forms.
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
Le WebBrowser contrôle accède à un nouveau document chaque fois qu’une des propriétés suivantes est définie ou que des méthodes sont appelées :
Vous pouvez gérer l’événement pour annuler la Navigating navigation si certaines conditions n’ont pas été remplies, par exemple, lorsque l’utilisateur n’a pas rempli complètement un formulaire. Pour annuler la navigation, définissez la Cancel propriété de l’objet WebBrowserNavigatingEventArgs passé au gestionnaire d’événements sur true
. Vous pouvez également utiliser cet objet pour récupérer l’URL du nouveau document via la WebBrowserNavigatingEventArgs.Url propriété . Si le nouveau document s’affiche dans un cadre de page web, vous pouvez récupérer le nom du cadre via la WebBrowserNavigatingEventArgs.TargetFrameName propriété .
Gérez l’événement Navigated pour recevoir une notification lorsque le WebBrowser contrôle termine la navigation et a commencé à charger le document au nouvel emplacement. Gérez l’événement DocumentCompleted pour recevoir une notification lorsque le WebBrowser contrôle termine le chargement du nouveau document.
Pour plus d'informations sur la gestion des événements, voir gestion et déclenchement d’événements.