Partager via


WebBrowser.Navigating Événement

Définition

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.

S’applique à

Voir aussi