Freigeben über


WebBrowser.Navigating Ereignis

Definition

Tritt ein, bevor das WebBrowser-Steuerelement zu einem neuen Dokument navigiert.

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 

Ereignistyp

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Sie einen Handler für das Ereignis verwenden, um die Navigating Navigation abzubrechen, wenn kein Webseitenformular ausgefüllt wurde. Die Document -Eigenschaft wird verwendet, um zu bestimmen, ob das Formulareingabefeld einen Wert enthält.

Dieses Beispiel erfordert, dass Ihr Formular ein WebBrowser Steuerelement mit dem Namen enthält webBrowser1 und dass Ihre Formularklasse über ein ComVisibleAttribute für COM zugängliches Steuerelement verfügt.

Ein vollständiges Codebeispiel, in das Sie den folgenden Code einfügen können, finden Sie unter Vorgehensweise: Hinzufügen von Webbrowserfunktionen zu einer Windows Forms-Anwendung.

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

Hinweise

Das WebBrowser Steuerelement navigiert zu einem neuen Dokument, wenn eine der folgenden Eigenschaften festgelegt oder Methoden aufgerufen werden:

Sie können das Ereignis behandeln, um die Navigating Navigation abzubrechen, wenn bestimmte Bedingungen nicht erfüllt wurden, z. B. wenn der Benutzer ein Formular nicht vollständig ausgefüllt hat. Um die Navigation abzubrechen, legen Sie die Cancel -Eigenschaft des -Objekts, das WebBrowserNavigatingEventArgs an den Ereignishandler übergeben wird, auf fest true. Sie können dieses Objekt auch verwenden, um die URL des neuen Dokuments über die WebBrowserNavigatingEventArgs.Url -Eigenschaft abzurufen. Wenn das neue Dokument in einem Webseitenrahmen angezeigt wird, können Sie den Namen des Frames über die WebBrowserNavigatingEventArgs.TargetFrameName -Eigenschaft abrufen.

Behandeln Sie das Navigated Ereignis, um Benachrichtigungen zu erhalten, wenn das Steuerelement die WebBrowser Navigation beendet und mit dem Laden des Dokuments an der neuen Position begonnen hat. Behandeln Sie das DocumentCompleted Ereignis, um eine Benachrichtigung zu erhalten, wenn das WebBrowser Steuerelement das Laden des neuen Dokuments abgeschlossen hat.

Weitere Informationen zur Behandlung von Ereignissen finden Sie unter behandeln und Auslösen von Ereignissen.

Gilt für:

Weitere Informationen